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

Nhận hàng trong đó cột datetime =hôm nay - Máy chủ SQL noob

Trên SQL Server 2008, bạn sẽ có DATE mới kiểu dữ liệu mà bạn có thể sử dụng để đạt được điều này:

SELECT (list of fields)
FROM dbo.YourTable
WHERE dateValue BETWEEN 
   CAST(GETDATE() AS DATE) AND DATEADD(DAY, 1, CAST(GETDATE() AS DATE))

CAST(GETDATE() AS DATE) chuyển ngày và giờ hiện tại thành giá trị chỉ ngày, ví dụ:return '2010-04-06' cho ngày 6 tháng 4 năm 2010. Việc thêm một ngày vào đó về cơ bản sẽ chọn tất cả các giá trị datetime của ngày hôm nay.

Trong SQL Server 2005, không có cách nào dễ dàng để làm điều này - giải pháp tốt nhất mà tôi tìm thấy ở đây là sử dụng thao tác số của DATETIME để đạt được kết quả tương tự:

SELECT (list of fields)
FROM dbo.YourTable
WHERE dateValue BETWEEN 
   CAST(FLOOR(CAST(GETDATE() AS FLOAT)) AS DATETIME) AND 
   DATEADD(DAY, 1, CAST(FLOOR(CAST(GETDATE() AS FLOAT)) AS DATETIME))


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ngày giờ T-SQL được làm tròn thành phút gần nhất và giờ gần nhất với việc sử dụng các hàm

  2. Cách chuyển đổi chữ hoa thành chữ thường trong SQL Server - LOWER ()

  3. @@ TEXTSIZE trong SQL Server là gì?

  4. Thêm tài khoản thư cơ sở dữ liệu vào hồ sơ (SSMS)

  5. Ví dụ về Chuyển đổi "date" thành "datetime" trong SQL Server (T-SQL)