使用日期范围内的星期几填充SQL列

时间:2013-03-06 11:18:13

标签: mysql sql command

我目前在我的数据库中有一个表格,其中列出了一系列日期,从5月到10月,采用以下格式:YYYY-MM-DD

我想要做的是创建一个新的列,其中包含与日期匹配的星期几。我想到了两个选择;

  1. 更新所有行,在“day”列中,从星期一开始,然后是下一个星期二,下周三等等,当到达星期日时,循环序列直到表格结束。

    < / LI>
  2. 阅读“日期”列中的日期,并使用匹配的星期几更新“日期”列。

  3. 我认为选项1是最容易的,而且很可能,因为没有日期被跳过。但我不知道如何做到这一点,找不到任何类似的搜索网页。

    任何帮助将不胜感激!谢谢

2 个答案:

答案 0 :(得分:2)

作为一般规则,我会说:不要这样做。一周中的哪一天直接来自日期;将其单独存储在数据库中会破坏规范化的基本规则之一(无派生数据)。

有MySQL函数可以找到星期几 - dayofweek()和weekday()。

答案 1 :(得分:0)

试试这个:

update table
set day = DATENAME(dw, date)