Is there a way to generate dates between date ranges. After looking on SO I found out there is a way to use CTE, another option is to use Union All from 0 to 9. Is there an inbuilt function which I can use to generate dates between date range?

We are using MySQL 8.0.

  • 1
    Is there an inbuilt function No. For your version - use recursive CTE. – Akina Dec 5 '18 at 9:42
  • Moreover, there is no table data type, so both any built-in function and possibility to create user-definad function with the output of table-type not exists. – Akina Dec 5 '18 at 9:56
  • 1
    (MariaDB has sequence-generating pseudo-tables.) – Rick James Dec 5 '18 at 16:41

I tried this solution :

WITH recursive Date_Ranges AS (
    select '2018-11-30' as Date
   union all
   select Date + interval 1 day
   from Date_Ranges
   where Date < '2018-12-31')
select * from Date_Ranges;

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.