Fügen Sie das Datum Feld zu Ihrer Auswahl und Gruppe von ihm. Andernfalls erkennt mysql extensions nicht, dass Sie nach dem Datum gruppieren möchten und aggregiert alle Ergebnisse in 1 Spalte. Und da Sie 0 count bekommen, darf die where-Klausel nicht funktionieren.
Ihr Datumsformat scheint falsch formatiert zu sein. normalerweise JJJJ/MM/TT-Format (Standardformat); oder ein Format angeben SELECT STR_TO_DATE('17/09/2010','%d/%m/%Y');
MySQL retrieves and displays DATE values in 'YYYY-MM-DD' format. The supported range is '1000-01-01' to '9999-12-31'.
die unten verwendet das implizite Casting und Standard-Datumsformat das Zeichenfolge Datum auf ein gültiges Datum zu konvertieren verwenden.
SELECT inicio_normal, count(*)
FROM `castigos`
WHERE inicio_normal='2017/05/06'
AND cod_emplazamiento=1
GROUP BY inicio_normal
Sonst tut es Mathe und vergleicht dieses Datum mit der für das Datum gespeicherten Zahl.
Verstehende Daten sollten in einem Datumsdatentyp gespeichert werden, und wenn Sie Daten abfragen, übergeben Sie eine Zeichenfolge, die in einen Datumsdatentyp umgewandelt wird, zum Vergleich. Sie müssen also das Standardformat verwenden oder die Zeichenfolge in ein Datum umwandeln, damit die Datenbank-Engine Ihr Format in ein Datum konvertieren kann.
Müssen mit der Tatsache umgehen, dass mySQL nur 1 Zeile hier zurückgibt, da es keine Gruppe gibt. und die erwarteten Ergebnisse zeigen Zählungen für jedes Datum in Daten. – xQbert
Ja, du schreibst ... bearbeite meine Antwort. –