2017-12-14 2 views
-1

Meine Tabelle folgende Daten:Mysql: Wie Datensätze von allen Benutzern jeden Tag Abfragen?

SELECT * FROM ibiza_production.line_write_revenues order by created_at desc limit 50; 

enter image description here

Wie Sie oben stehenden Tabelle sehen kann, hat user_id und created_at Spalten. Ich möchte Daten wie unten gezeigt abfragen.

enter image description here

ich unten Abfrage verwendet, aber es nur Daten für 1 Benutzer zu einem beliebigen Zeitpunkt.

SELECT count(*) AS 'Requests', 
DATE(created_at) AS 'Date',user_id 
FROM ibiza_production.line_write_revenues where user_id is not null 
GROUP BY DATE(created_at); 

enter image description here

Wie Sie sehen können, zeigt es, Daten nur für einen Benutzer eine Zeit. Bitte helfen.

Antwort

2

Fügen Sie user_id in group by-Klausel für jede aktuelle Daten zu erhalten und jeden Benutzer

SELECT count(*) AS 'Requests', 
DATE(created_at) AS 'Date', 
user_id 
FROM ibiza_production.line_write_revenues where user_id is not null 
GROUP BY DATE(created_at),user_id; 
+0

Vielen Dank. Es funktionierte. – RajSharma

2
SELECT count(*) AS 'Requests', 
DATE(created_at) AS 'Date',user_id 
FROM ibiza_production.line_write_revenues where user_id is not null 
GROUP BY DATE(created_at), user_id; 
+0

Sie müssen Benutzer zu Gruppe hinzufügen nach. –

0

zur Gruppe Versuchen mit concat

SELECT `date`,`user_id`,COUNT(*) FROM ibiza_production.line_write_revenues GROUP BY CONCAT(`date`,'-',`user_id`) ORDER BY `date`,`user_id` LIMIT 50 
0

Hallo Können Sie das versuchen, und lassen Sie mich wissen wenn es dir geholfen hat.

SELECT count(*) AS 'Requests', 
DATE(created_at) AS 'Date',user_id 
FROM ibiza_production.line_write_revenues where user_id is not null 
GROUP BY DATE(created_at),user_id order by DATE(created_at); 
Verwandte Themen