Sto provando a scrivere una query per selezionare tutti i record dalla tabella users
dove(campo data/ora) è> = 3 mesi da oggi.mysql seleziona record superiori a 3 mesi
Qualche idea?
Sto provando a scrivere una query per selezionare tutti i record dalla tabella users
dove(campo data/ora) è> = 3 mesi da oggi.mysql seleziona record superiori a 3 mesi
Qualche idea?
SELECT *
FROM users
WHERE user_datecreated >= NOW() - INTERVAL 3 MONTH
Se si desidera ignorare l'ora del giorno in cui è stato creato un utente, è possibile utilizzare quanto segue. Quindi questo mostrerà qualcuno creato alle 8:00 se esegui la query di esempio di Quassnoi alle 14:00.
SELECT *
FROM users
WHERE DATE(user_datecreated) >= DATE(NOW() - INTERVAL 3 MONTH)
Uso DATA (user_datecreated) impedisce mysql di utilizzare gli indici sulla colonna, rendendo la query molto lento quando la tabella cresce.
Non è necessario ignorare l'ora in cui l'utente è stato creato se si rimuove l'ora dalla data "3 mesi fa", poiché tutti gli utenti creati in quel giorno corrisponderanno alla condizione.
SELECT *
FROM users
WHERE user_datecreated >= DATE(NOW() - INTERVAL 3 MONTH);