sql >> Database >  >> RDS >> Mysql

genereer_series() equivalent in MySQL

Dit is hoe ik het doe. Het creëert een reeks datums vanaf 01-01-01 tot 31-12-2011 :

select 
    date_format(
        adddate('2011-1-1', @num:[email protected]+1), 
        '%Y-%m-%d'
    ) date
from 
    any_table,    
    (select @num:=-1) num
limit 
    365

-- use limit 366 for leap years if you're putting this in production

De enige vereiste is dat het aantal rijen in any_table moet groter of gelijk zijn aan de grootte van het benodigde bereik (>=365 rijen in dit voorbeeld). Je zult dit waarschijnlijk gebruiken als een subquery van je hele zoekopdracht, dus in jouw geval any_table kan een van de tabellen zijn die u in die zoekopdracht gebruikt.



  1. Verwerkingsdatum in SQL Server

  2. Android studio getSlotFromBufferLocked:onbekende bufferfout

  3. Welke versie van PostgreSQL gebruik ik?

  4. Werkstroompatronen gebruiken om de status van een entiteit te beheren