在SQL Server中,使日期時間代表基於另一個日期時間的月份的第一天的最簡單/最簡潔的方法是什麼?例如,我有一個3-MAR-2005 14:23一個變量或列,我想獲得1-MAR-2005 00:00(爲日期,而不是爲varchar)創建日期的最簡單方法是給定另一日期的月份的第一天
8
A
回答
23
Select DateAdd(Month, DateDiff(Month, 0, GetDate()), 0)
運行這在一列上,用你的列名替換GetDate()。
這段代碼的訣竅是使用DateDiff。 DateDiff返回一個整數。第二個參數(0)表示SQL Server中的0日期,即1900年1月1日。因此,datediff會計算自1900年1月1日以來的整數個月,然後將該月數加到1900年1月1日。最終效果是刪除日期時間值的日期(和時間)部分。
7
SELECT DATEADD(mm, DATEDIFF(mm, 0, @date), 0)
2
像這樣的工作....
UPDATE YOUR_TABLE
SET NewColumn = DATEADD(day, (DATEPART(day, OldColumn) -1)*-1, OldColumn)
+0
表達式可能會更簡單一些:`DATEADD(day,1 - day(OldColumn),OldColumn)`。然而,DATEADD&DATEDIFF方法更好,因爲它也重置時間部分。 – 2011-06-04 09:45:28
0
只需使用
DATEADD(DAY, 1-DAY(@date), @date)
相關問題
- 1. 格式日期作爲月份的第一天/最後一天
- 2. RDLC-Report得到給定日期的月份的最後一天
- 3. java獲取給定月份和給定年份的第一個日期和最後一個日期
- 4. 當前月份第一天的日期和提前5天的日期。 MySQL的
- 5. 獲取指定日期的月份的第一個和最後一個日期
- 6. PHP:最簡單的方法是在第一個月的6個月之前獲取月份的日期?
- 7. 如何僅獲取星期一在兩個給定日期之間的月份的最後一天的日期
- 8. 試圖得到一個星期的第一天和最後一天的日期,給定一個任務。日期
- 9. JS日期,月的第一天
- 10. SAS:找到月份和年份的最後一天的日期
- 11. 選擇月份的第一天到當前日期之間的所有日期
- 12. 在PHP中抓取特定月份的第一個日期和最後日期
- 13. Java獲取下個月的第一天給定日期
- 14. 獲取給定日期的最後一天(日期)
- 15. 如何爲一個月的第31天創建時間日期?
- 16. 月份的最後日期
- 17. 日期時間( '四月的第一天')返回相同的日期時間( '五月的第一天')
- 18. Ruby:在兩個日期之間發生的月份特定日期(例如,每月的第一天)的次數
- 19. 如何獲得給定日期的下個月的第一個星期天?
- 20. 大於指定日期(日期,月份,年份)的日期
- 21. 獲得一週的第一天的日期在給定日期PHP
- 22. 減去月份 - 月份的最後一天的問題?在河上的日期
- 23. 將日期舍入到月份的第一天
- 24. 在MySQL中更新日期到月份的第一天?
- 25. 如何從YearMonth日期獲取月份的最後一天?
- 26. 選擇最多的日期與給定的年份和月份
- 27. 如何獲得java中給定月份的最小日期和最大日期
- 28. Datepicker - 更改日期格式,如果選擇日期是月的第一天
- 29. 如何將日期定位到該月的第一個日期?
- 30. 獲取上個月的第一天和最後一天的日期在C#
此代碼是由真棒。它也適用於其他時間單位。 – 2008-09-23 15:11:46