2016-03-01 50 views
0
SET @variable1 = (SELECT DAY(LAST_DAY('2016-03-01')) as lastday); 
SELECT @variable1 as last_day, 
    DAYNAME(CONCAT('2016-03-',@variable1)) as day_name; 

我能够得到天数为31天的天数,但我怎样才能从1日到31日获得天数呢?如何选择第1天到最后一天,以便获取所有日期的日期名称?

在select语句会以某种方式表现出这样的:

dayname | day count 
tuesday  01 
wednesday 02 
....   ... 
thursday  31 
+0

不知道你的用例是什么,但数据库应该用来存储数据而不生成它。 – Gustek

+0

这样我就可以使用angularJS显示当月的所有日期名称,所以我必须制作一个动态的方式来填充dayname列。这是一个DTR系统,这实际上可以设计得更好,但我只是一名员工。呵呵。 :) –

回答

0

您可以创建临时表,然后做一个循环中插入所需的数据

while @day < @last_day_of_month do 
    "insert dayname and day of month into temporary table"; 
    set @[email protected]+1; 
    end while; 

,然后选择*从“临时表“

相关问题