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

Perbandingan tanggal SQL Server berdasarkan bulan dan tahun saja

Untuk menangani ketidaksetaraan, seperti antara, saya ingin mengonversi tanggal/waktu menjadi representasi YYYYMM, baik sebagai string atau integer. Untuk contoh ini:

DECLARE @date1 DATETIME = CAST('6/14/2014' AS DATETIME),
        @date2 DATETIME = CAST('6/15/2014' AS DATETIME),
        @date3 DATETIME = CAST('7/1/2014' AS DATETIME);

SELECT * FROM tableName WHERE @date2 BETWEEN @date1 AND @date3;

Saya akan menulis kueri sebagai:

SELECT *
FROM tableName
WHERE year(@date2) * 100 + month(@date2) BETWEEN year(@date1) * 100 + month(@date1) AND
                                                 year(@date3) * 100 + month(@date1);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. perbarui pemicu untuk memperbarui catatan di tabel lain

  2. Pilih pernyataan untuk mengembalikan induk dan anak tak terbatas

  3. Nilai kinerja panduan COMB

  4. Konversi 'datetime2' menjadi 'datetimeoffset' di SQL Server (Contoh T-SQL)

  5. Linq To Sql dan identity_insert