Rumah >pangkalan data >tutorial mysql >Bagaimana untuk mendapatkan tarikh yang lebih besar daripada nilai khusus dalam SQL Server?

Bagaimana untuk mendapatkan tarikh yang lebih besar daripada nilai khusus dalam SQL Server?

Linda Hamilton
Linda Hamiltonasal
2024-12-30 05:49:11335semak imbas

How to Correctly Retrieve Dates Greater Than a Specific Value in SQL Server?

Mendapatkan Tarikh Lebih Besar Daripada Nilai Tertentu dalam SQL Server

Dalam percubaan untuk mendapatkan tarikh yang melebihi cap masa tertentu, anda menggunakan pertanyaan berikut :

SELECT * 
FROM dbo.March2010 A
WHERE A.Date >= 2010-04-01;

Walau bagaimanapun, anda menghadapi masalah dengan pertanyaan ini. Untuk memahami sebabnya, mari kita periksa faktor berikut:

  • Jenis Data: Nilai yang diberikan, "2010-04-01," ditafsirkan sebagai ungkapan matematik. Dalam SQL Server, ia menandakan integer "2005," kerana ia menolak bahagian tarikh (4 dan 1) dari 2010.
  • Penukaran Masa Tarikh: Untuk membandingkan tarikh dengan betul, anda mesti menukar ungkapan kepada format yang sesuai. Ini boleh dicapai dengan menggunakan fungsi Tukar untuk mengubahnya menjadi jenis data masa tarikh.

Oleh itu, pertanyaan berikut harus menyelesaikan isu:

SELECT *  
FROM dbo.March2010 A 
WHERE A.Date >= Convert(datetime, '2010-04-01' )

Pertanyaan ini menukar secara eksplisit "2010-04-01" kepada nilai datetime, memastikan perbandingan yang betul dengan lajur "A.Date."

Atas ialah kandungan terperinci Bagaimana untuk mendapatkan tarikh yang lebih besar daripada nilai khusus dalam SQL Server?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn