Mysql
 sql >> Database >  >> RDS >> Mysql

mysql seleziona date senza tabelle

Sono d'accordo con i commenti, che una cosa del genere non dovrebbe essere eseguita nel database, ma tecnicamente è possibile. Se fornisci la data di inizio e di fine, aggiungi numeri aggiuntivi alla sottoquery se necessario:

SELECT '2011-02-01' + INTERVAL a + b DAY dte
FROM
 (SELECT 0 a UNION SELECT 1 a UNION SELECT 2 UNION SELECT 3
    UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7
    UNION SELECT 8 UNION SELECT 9 ) d,
 (SELECT 0 b UNION SELECT 10 UNION SELECT 20 
    UNION SELECT 30 UNION SELECT 40) m
WHERE '2011-02-01' + INTERVAL a + b DAY  <  '2011-03-01'
ORDER BY a + b

Risultati:

"2011-02-01"
"2011-02-02"
"2011-02-03"
....
"2011-02-28"