2016-11-30 84 views
0

2016年1月至3月之间查询所有星期日日期的查询? 只输出显示的日期。2016年1月至3月之间查找mySQL中的所有星期日

| Sundays | 
|- - - - - -| 
| 2  | 
| 9  | 
| 16  | 
| 23  | 
| 30  | 
- - - - - - 

我找到这样select ('2013-04-15' - interval dayofweek('2013-08-15') - 1 day) - interval (weekofyear('2013-04-15') - 1) * 7 day as SUNDAY; 但查询只显示一个星期天。

回答

0

要获得如下查询周日会为你

select DATE_ADD('2016-01-01', INTERVAL ROW DAY) as Date, 
row+1 as DayOfMonth 
from 

     (
     SELECT @row := @row + 1 as row 
     FROM 
       (
       select 0 
       union all 
       select 1 
       union all 
       select 3 
       union all 
       select 4 
       union all 
       select 5 
       union all 
       select 6 
       ) t1, 

       (
       select 0 
       union all 
       select 1 
       union all 
       select 3 
       union all 
       select 4 
       union all 
       select 5 
       union all 
       select 6 
       ) t2, 
       (SELECT @row:=-1 
       ) t3 limit 31 
     ) b 
where 
DATE_ADD('2016-01-01', INTERVAL ROW DAY) 
between '2016-01-01' and '2016-03-31' 
and 
DAYOFWEEK(DATE_ADD('2016-01-01', INTERVAL ROW DAY))=1; 
+0

工作哇,,太长,,没有为这个简单的查询?你能向我解释一下吗?对不起,新手 –

+0

和那个查询只显示一月份.. –

相关问题