Frage

Ich kann also die Tage mit SELECT DATEDIFF(CURDATE(),expires) abrufen, aber nicht genau einen Monat mit einer Ausgabe von eins (1).Ist es nicht irgendwie möglich, es in MySQL in einen Monat umzuwandeln?Ich möchte überprüfen, ob ein bestimmtes Datum (wie expires)>= 1 ist.

War es hilfreich?

Lösung

SELECT 
   ...
FROM
   tablename
WHERE
   expires<=DATE_SUB(CURDATE(), INTERVAL 1 MONTH);

Sie erhalten alle Zeilen, die vor einem Monat oder früher abgelaufen sind

Andere Tipps

Verwenden Sie die folgende Abfrage

  Select * from 
  table_name where TIMESTAMPDIFF
  (MONTH, 
  ADDDATE(LAST_DAY(SUBDATE(expires, INTERVAL 1 MONTH)), 1),
  ADDDATE(LAST_DAY(SUBDATE(CURDATE(), INTERVAL 1 MONTH)), 1)
  )>=1

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top