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

Mệnh đề WHERE để tìm tất cả các bản ghi trong một tháng cụ thể

Tôi nghĩ chức năng bạn đang tìm là MONTH(date) . Có thể bạn sẽ muốn sử dụng 'YEAR' quá.

Giả sử bạn có một bảng có tên things trông giống như sau:

id happend_at
-- ----------------
1  2009-01-01 12:08
2  2009-02-01 12:00
3  2009-01-12 09:40
4  2009-01-29 17:55

Và giả sử bạn muốn thực thi để tìm tất cả các bản ghi có happened_at trong tháng 2009/01 (tháng 1 năm 2009). Truy vấn SQL sẽ là:

SELECT id FROM things 
   WHERE MONTH(happened_at) = 1 AND YEAR(happened_at) = 2009

Cái nào sẽ trả về:

id
---
1
3
4


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. đếm số lượng khoảng trắng trong các giá trị trong máy chủ sql

  2. Tại sao SQL Server thêm số nguyên 4 byte vào các chỉ mục nhóm không phải duy nhất

  3. INSTR () Tương đương trong SQL Server

  4. Tính tổng các giá trị trong cây (truy vấn đệ quy)

  5. Truy vấn SQL để chọn ngày giữa hai ngày