MYSQL seçin ve tarihe göre grup

3 Cevap php

Ben arıyorum sonuç almak için doğru bir sorgu oluşturmak nasıl emin değilim. Ne var 2 tablolar olduğunu. İlk ID, Ad sütun vardır ve ikinci tarih ve tablo 1 sütun numarası başvurulan adminID vardır. Şimdi, ne elde etmek istediğiniz her yönetici ay boyunca günde Giriş yaptıktan temelde kez sayısıdır.

ID  |  Date
------------------
4   |  2010/03/01
4   |  2010/03/04
4   |  2010/03/04
4   |  2010/03/05
4   |  2010/03/05

Sonuç Admin 4 5 2, 2 Mart toplam 1'e benzer olacaktır böylece ben gün ve ay başı verileri almak istiyorum bu gibi yapıdan:

ID  |  Date       | Count
--------------------------
4   |  2010/03/01 | 1
4   |  2010/03/04 | 2
4   |  2010/03/05 | 2

3 Cevap

Bu deneyin:

  SELECT COUNT(*), a.name, DATE(l.date)
    FROM admin a
   INNER
    JOIN logins l ON l.admin_id = a.id
   WHERE l.date > start_date AND l.date < end_date
GROUP BY a.name, DATE(l.date)

EDIT: Bu çalışıyor, test:

SELECT count(ID) AS day_count,ID,Date FROM Table GROUP BY Date;

Tablo:

id  date
4   2010-04-13
4   2010-04-13
4   2010-04-23
4   2010-04-11
4   2010-04-17
4   2010-04-17
4   2010-04-17

Çıkışlar:

day_count   id  date
1   4   2010-04-11
2   4   2010-04-13
3   4   2010-04-17
1   4   2010-04-23

newRec göre tarih sırasına göre numRec, tabloismi gruptan tarih olarak id, count (*) seçin