Wie können Sie das heutige Datum ermitteln und in das 01/mm /yyyy
-Format konvertieren und Daten aus der Tabelle mit dem Liefermonat vor 3 Monaten erhalten? Die Tabelle enthält bereits den Liefermonat als 01/mm/yyyy
.
SELECT *
FROM TABLE_NAME
WHERE Date_Column >= DATEADD(MONTH, -3, GETDATE())
Die von Mureinik vorgeschlagene Methode liefert die gleichen Ergebnisse, aber wenn Sie dies tun, kann Ihre Abfrage von allen Indizes in Date_Column
profitieren.
oder Sie können die letzten 90 Tage überprüfen.
SELECT *
FROM TABLE_NAME
WHERE Date_Column >= DATEADD(DAY, -90, GETDATE())
Neueste Versionen von mysql unterstützen nicht DATEADD, sondern verwenden die Syntax
DATE_ADD(date,INTERVAL expr type)
Um die letzten 3 Monate Datennutzung zu erhalten,
DATE_ADD(NOW(),INTERVAL -90 DAY)
DATE_ADD(NOW(), INTERVAL -3 MONTH)
Ich würde datediff
verwenden und sich nicht um Formatkonvertierungen kümmern:
SELECT *
FROM mytable
WHERE DATEDIFF(MONTH, my_date_column, GETDATE()) <= 3
Letzte 3 Monate
SELECT DATEADD(dd,DATEDIFF(dd,0,DATEADD(mm,-3,GETDATE())),0)
Heute
SELECT DATEADD(dd,DATEDIFF(dd,0,GETDATE()),0)