如何获得代表一个月第一天的日期?

Dav*_*Dev 33 sql sql-server datetime date

我需要一个脚本中的功能,使我能够在表中插入日期.

我需要什么SQL来插入格式的日期

01/08/2010 00:00:00
Run Code Online (Sandbox Code Playgroud)

其中日期是当月的第一天.我需要更改订单才能指定月份值?谢谢

Ice*_*ind 77

最好和最简单的方法是使用:

SELECT DATEADD(m, DATEDIFF(m, 0, GETDATE()), 0)
Run Code Online (Sandbox Code Playgroud)

只需用您需要的日期替换GETDATE()即可.

  • 聪明但不是非常明显.请务必在您的代码中对此进行评论,以防止将来读取您的代码的任何其他人不可避免地头疼. (14认同)
  • 这是太棒了.经过一番思考后才能理解.谢谢. (2认同)

jmo*_*eno 9

接受的答案有效,并且可能更快,但SQL 2012及更高版本有一个更容易理解的方法:

SELECT cast(format(GETDATE(), 'yyyy-MM-01') as Date)
Run Code Online (Sandbox Code Playgroud)