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

Pernyataan Datetime ANTARA tidak berfungsi di SQL Server

Apakah Anda memiliki waktu yang terkait dengan kencan Anda? BETWEEN bersifat inklusif, tetapi ketika Anda mengonversi 2013-10-18 ke tanggal, itu menjadi 2013-10-18 00:00:000.00. Apa pun yang dicatat setelah detik pertama tanggal 18 tidak akan ditampilkan menggunakan ANTARA, kecuali jika Anda menyertakan nilai waktu.

Coba:

SELECT 
* 
FROM LOGS 
WHERE CHECK_IN BETWEEN 
    CONVERT(datetime,'2013-10-17') 
    AND CONVERT(datetime,'2013-10-18 23:59:59:998')

jika Anda ingin mencari sepanjang hari tanggal 18. Saya menyetel milidetik ke 998 karena SQL Server menarik pada tahun 2013-10-19 00:00:00:0000 dalam kueri.

Bidang SQL DATETIME memiliki milidetik. Jadi saya menambahkan 999 ke bidang.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORDER BY item harus muncul dalam daftar pilih jika SELECT DISTINCT ditentukan

  2. Utilitas Pengubah Kata Sandi SQL yang Cerdik untuk Mengatur Ulang Kata Sandi SQL

  3. Apakah mungkin menggunakan `SqlDbType.Structured` untuk meneruskan Parameter Bernilai Tabel di NHibernate?

  4. Mengakses langsung Sql Server Database di Xamarin.Forms

  5. Cara Menemukan Format Tanggal yang Digunakan untuk Bahasa Tertentu di SQL Server (T-SQL)