Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何在日历表中获取起始月列?_Sql_Calendar - Fatal编程技术网

Sql 如何在日历表中获取起始月列?

Sql 如何在日历表中获取起始月列?,sql,calendar,Sql,Calendar,我有一个SQL日历,显示2014-2020年期间的每个日期以及每个日期开始的那一周 我希望添加一个新的列(如果可能的话),显示每个日期的月1日 例如: 这可能吗 谢谢 这可能不是最快的解决方案,但它很有效(SQL Server 2014): 更改表格[日历] 添加monthstart日期时间 更新[日历] 设置monthstart=datefromparts(年([date])、月([date])、01) 如果不支持datefromparts,您可以尝试: 更改表格[日历] 添加monthst

我有一个SQL日历,显示2014-2020年期间的每个日期以及每个日期开始的那一周

我希望添加一个新的列(如果可能的话),显示每个日期的月1日

例如:

这可能吗


谢谢

这可能不是最快的解决方案,但它很有效(SQL Server 2014):

更改表格[日历] 添加monthstart日期时间

更新[日历] 设置monthstart=datefromparts(年([date])、月([date])、01)

如果不支持datefromparts,您可以尝试:

更改表格[日历] 添加monthstart日期时间

更新[日历]
设置monthstart=CAST(CAST(年([date])为varchar)+'-'+CAST(月([date]为varchar)+'-'+CAST(01为varchar)为DATETIME)

您使用的是什么RDBMS?。创建一个视图,无需将该类型的列添加到表中。