Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

DATEADD (MONTH, DATEDIFF (MONTH, 0, GETDATE ()), 0) Ai đó có thể giải thích cho tôi điều này không

điều này sẽ cung cấp cho bạn ngày đầu tiên của tháng cho một ngày nhất định

chọn bên trong select DATEDIFF(MONTH, 0, GETDATE()) sẽ cung cấp số tháng từ 1900-01-01

đây là 1350

điều này sẽ được thêm vào 1900-01-01, nhưng chỉ các tháng

select DATEADD(MONTH,1350,0) sẽ cung cấp 2012-07-01 00:00:00.000

là ngày bắt đầu của tháng hiện tại.

Tôi nghĩ đây là cách hiệu quả nhất để tìm ngày bắt đầu của một tháng cho bất kỳ ngày cụ thể nào.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để lưu trữ các giá trị thập phân trong SQL Server?

  2. ISO_year trong sql-server là gì

  3. Chuyển đổi từ DateTime sang INT

  4. Tải tệp CSV lên máy chủ SQL

  5. Tôi có thể tìm Thuộc tính biên dịch trước SSIS cho Tác vụ tập lệnh trong SQL Server 2008 ở đâu?