Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Klausa WHERE untuk menemukan semua catatan dalam bulan tertentu

Saya rasa fungsi yang Anda cari adalah MONTH(date) . Anda mungkin ingin menggunakan 'YEAR' juga.

Mari kita asumsikan Anda memiliki tabel bernama things yang terlihat seperti ini:

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

Dan katakanlah Anda ingin mengeksekusi untuk menemukan semua catatan yang memiliki happened_at selama bulan 2009/01 (Januari 2009). Kueri SQL akan menjadi:

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

Yang akan kembali:

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. Kunci Asing SQL Server melintasi batas basis data - teknik untuk penegakan

  2. Kapan saya perlu menggunakan Blok Mulai / Akhir dan kata kunci Go di SQL Server?

  3. Konversi Nomor Bulan ke Fungsi Nama Bulan di SQL

  4. Kueri berkinerja optimal untuk catatan terbaru untuk setiap N

  5. Contoh Pernyataan Gabung Sederhana di SQL Server