tarikh SQL
Tarikh SQL
Apabila kita berurusan dengan tarikh, tugas yang paling sukar mungkin adalah untuk memastikan format tarikh yang dimasukkan sepadan dengan tarikh dalam pangkalan data Format lajur sepadan.
Selagi data anda mengandungi hanya bahagian tarikh, tiada masalah menjalankan pertanyaan. Walau bagaimanapun, apabila ia datang kepada bahagian masa, perkara menjadi lebih rumit.
Sebelum membincangkan kerumitan pertanyaan tarikh, mari kita lihat fungsi pemprosesan tarikh terbina dalam yang paling penting.
Fungsi Tarikh MySQL
Jadual berikut menyenaraikan fungsi tarikh terbina dalam yang paling penting dalam MySQL:
函数 | 描述 |
---|---|
NOW() | 返回当前的日期和时间 |
CURDATE() | 返回当前的日期 |
CURTIME() | 返回当前的时间 |
DATE() | 提取日期或日期/时间表达式的日期部分 |
EXTRACT() | 返回日期/时间的单独部分 |
DATE_ADD() | 向日期添加指定的时间间隔 |
DATE_SUB() | 从日期减去指定的时间间隔 |
DATEDIFF() | 返回两个日期之间的天数 |
DATE_FORMAT() | 用不同的格式显示日期/时间 |
SQL Server Fungsi Tarikh
Jadual berikut menyenaraikan fungsi tarikh terbina dalam yang paling penting dalam SQL Server:
函数 | 描述 |
---|---|
GETDATE() | 返回当前的日期和时间 |
DATEPART() | 返回日期/时间的单独部分 |
DATEADD() | 在日期中添加或减去指定的时间间隔 |
DATEDIFF() | 返回两个日期之间的时间 |
CONVERT() | 用不同的格式显示日期/时间 |
Jenis data Tarikh SQL
MySQL Gunakan jenis data berikut untuk menyimpan nilai tarikh atau tarikh/masa dalam pangkalan data:
-
TARIKH - Format: YYYY-MM-DD
DATETIME - Format: YYYY-MM-DD HH:MM:SS
TIMESTAMP - Format: YYYY-MM-DD HH:MM:SS
TAHUN - Format: YYYY atau YY
SQL Server Simpan nilai tarikh atau tarikh/masa dalam pangkalan data menggunakan jenis data berikut:
TARIKH - Format: YYYY-MM-DD
DATETIME - Format: YYYY-MM-DD HH:MM:SS
SMALLDATETIME - Format: YYYY-MM-DD HH:MM:SS
-
TIMESTAMP - Format: nombor unik
Nota: Apabila anda mencipta jadual baharu dalam pangkalan data, anda perlu memilih jenis data untuk lajur!
Untuk mengetahui tentang semua jenis data yang tersedia, lawati Manual Rujukan Jenis Data kami yang lengkap.
Pemprosesan Tarikh SQL
Jika bahagian masa tidak terlibat, maka kita boleh membandingkan dua tarikh dengan mudah!
Andaikan kami mempunyai jadual "Pesanan" berikut:
OrderId | ProductName | OrderDate |
---|---|---|
1 | Geitost | 2008-11-11 |
2 | Camembert Pierrot | 2008-11-09 |
3 | Mozzarella di Giovanni | 2008-11-11 |
4 | Mascarpone Fabioli | 2008-10-29 |
Sekarang, kami ingin memilih rekod yang Tarikh Pesanannya ialah "2008-11-11" daripada jadual di atas.
Kami menggunakan pernyataan SELECT berikut:
Set keputusan adalah sebagai berikut :
OrderId | ProductName | OrderDate |
---|---|---|
1 | Geitost | 2008-11-11 |
3 | Mozzarella di Giovanni | 2008-11-11 |
Sekarang, katakan jadual "Pesanan" kelihatan seperti ini (perhatikan bahagian masa dalam lajur "Tarikh Pesanan"):
OrderId | ProductName | OrderDate |
---|---|---|
1 | Geitost | 2008-11-11 13:23:44 |
2 | Camembert Pierrot | 2008-11-09 15:45:21 |
3 | Mozzarella di Giovanni | 2008-11-11 11:12:01 |
4 | Mascarpone Fabioli | 2008-10-29 14:56:59 |
Jika kita menggunakan pernyataan SELECT yang sama seperti di atas:
Maka kita akan mendapat To hasilnya! Ini kerana tarikh dalam pertanyaan ini tidak mengandungi komponen masa.
Petua: Jika anda ingin memastikan pertanyaan anda ringkas dan lebih mudah diselenggara, jangan gunakan bahagian masa dalam tarikh!