sql >> Database >  >> RDS >> Mysql

SELECTEER alle records die 30 dagen oud zijn

Als het datatype updatestatus is date :

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

of:

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

Als het datatype datetime is of timestamp en je wilt ook het tijdsgedeelte controleren:

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

U kunt een exacte datum/tijd invoeren in plaats van de NOW() - INTERVAL 1 MONTH . De juiste manier hangt af van hoe u de datum- of tijdstempels opslaat (maakt de Perl-code of MySQL ze überhaupt aan?).

U kunt ook - INTERVAL 30 DAY . plaatsen die iets andere resultaten opleveren.



  1. Oracle RAC VIP en ARP Primer

  2. Is er een Profiler-equivalent voor MySql?

  3. Java JDBC negeert setFetchSize?

  4. Een vooraf ingevulde database bijwerken