Ich habe ein Datenbankfeld vom Typ datetime.ORDER BY datetime abhängig vom Tag UND Zeit
Der Name dieses Feldes ist „recallDate“
Ich möchte die Ergebnisse in der folgenden Art und Weise bestellen:
- Die Ergebnisse chronologisch in der Zeit sein muss: von neu nach alt
- die Ergebnisse müssen nach Datum gruppiert: mit anderen Worten, führen das gleiche Datum haben gemeinsam, für jeden da
- gruppiert y, müssen die Ergebnisse chronologisch sein nach der Stunde: frühestens nach neuesten
- Die Ergebnisse keine Stunde mit (00.00.00) haben des Tages am Ende der Ergebnisse sein
Dies ist meine eigentliche Abfrage:
SELECT a.recallDate, a.id, a.id_company, com.name, a.recallType
FROM PDT_CRM.actions a
INNER JOIN PDT_CRM.traders as trad on trad.id=a.id_traders
WHERE DATE(a.recallDate) > DATE(NOW() + INTERVAL 30 DAY)
ORDER BY TIME(a.recallDate) , a.recallType
es ist sehr wahrscheinlich, dass ich CASE verwenden, aber ich verstehe nicht, wie es zu benutzen.
Erstes Datum, dann Zeit. – jarlh
Post Ihre Eingabe und erwartete Ausgabe –
Können Sie die Daten nicht behoben werden? Praktisch alles sieht Datumswerte mit einem 0-Wert als zu Beginn des Tages gehörend - also was ist besser - manuell in jeder von Ihnen geschriebenen Anfrage "korrigieren" zu müssen oder zu ändern, was auch immer die Daten schreibt, wenn sie * beabsichtigt * zu sagen "Mitternacht am Ende des Tages X" schreibt es tatsächlich "Mitternacht am Anfang des Tages X + 1"? –