sql >> Databasteknik >  >> RDS >> Mysql

VÄLJ alla poster som är 30 dagar gamla

Om datatypen updatestatus är date :

SELECT * 
FROM people 
WHERE updatestatus <= '2012-01-01'

eller:

SELECT * 
FROM people 
WHERE updatestatus <= CURRENT_DATE() - INTERVAL 1 MONTH

Om datatypen är datetime eller timestamp och du vill också kontrollera tidsdelen:

SELECT * 
FROM people 
WHERE updatestatus <= NOW() - INTERVAL 1 MONTH

Du kan ange en exakt datum och tid istället för NOW() - INTERVAL 1 MONTH . Det korrekta sättet beror på hur du lagrar datum och tider eller tidsstämplar (skapar Perl-koden eller MySQL dem i första hand?).

Du kan också lägga in - INTERVAL 30 DAY som ger något annorlunda resultat.



  1. är det möjligt att ha alfanumerisk sekvensgenerator i sql

  2. Postgresql:Skriptkörning av psql med lösenord

  3. Bästa sättet att återställa en Oracle-sekvens till nästa värde i en befintlig kolumn?

  4. Insamlingsmetoder:FÖRSTA &SISTA funktioner i Oracle Database