Ich habe Problem auf meinem SQL-Code, Hier ist der Code:SQL PHP Zähldaten zwischen zwei Datum für Tag Gruppe und zeigt jeden Tag Rekord
SELECT
COUNT(CASE WHEN ItemState = 1 THEN 1 ELSE NULL END) AS C1,
COUNT(CASE WHEN ItemState = 3 THEN 1 ELSE NULL END) AS C2,
COUNT(CASE WHEN ItemState = 5 THEN 1 ELSE NULL END) AS C3,
COUNT(CASE WHEN ItemState = 7 THEN 1 ELSE NULL END) AS C4,
COUNT(CASE WHEN ItemState = 10 THEN 1 ELSE NULL END) AS C5,
DAY(LastUpdate) AS Day
FROM purchasehistory
WHERE ItemID=77
AND LastUpdate BETWEEN "2017-10-25 00:00:00" AND "2017-10-30 23:59:59"
GROUP BY Day
ORDER BY LastUpdate
LIMIT 5
Die Zahl Aussage ist Arbeit, aber das Ergebnis ist nicht was ich
wollte Es sollte fünf Rekord zeigen, wo Tag gleich 25, 26, 27, 28, 29, 30
Aber wenn c1, c2, c3, c4 und c5 alle gleich 0 sind es nicht zeigen, die Zeile anstatt zu zeigen, all 0
Wie das Problem zu lösen?
Markieren Sie Ihre Frage mit der Datenbank, die Sie verwenden. –
Das liegt daran, dass in diesem Fall wahrscheinlich keine Zeile zurückgegeben wurde, sodass Sie keine Daten anzeigen können. –
Siehe: [Warum sollte ich ein MCVE für eine scheinbar einfache SQL-Abfrage bereitstellen?] (Https://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve -for-was-scheint-mir-sehr-einfach-sql-abfrage) – Strawberry