Fungsi Date SQL
Tanggal SQL
Ketika kita mengelola tanggal, tugas yang paling sulit mungkin adalah memastikan format tanggal yang diinput sesuai dengan format kolom tanggal di database.
Jika data hanya berisi bagian tanggal, eksekusi query tidak akan ada masalah. Namun, jika melibatkan waktu, situasi menjadi kompleks.
Sebelum mendiskusikan kompleksitas dari query tanggal, kita lihat terlebih dahulu fungsi pengolahan tanggal yang paling penting:
Fungsi Tanggal MySQL
Tabel di bawah ini menampilkan fungsi-tipe tanggal yang paling penting di MySQL:
Fungsi | Deskripsi |
---|---|
NOW() | Mengembalikan tanggal/waktu saat ini |
CURDATE() | Mengembalikan tanggal saat ini |
CURTIME() | Mengembalikan waktu saat ini |
DATE() | Mengambil bagian tanggal dari ekspresi tanggal atau tanggal/waktu |
EXTRACT() | Mengembalikan bagian tunggal tanggal/waktu |
DATE_ADD() | Menambahkan interval waktu yang ditentukan ke tanggal |
DATE_SUB() | Mengurangi interval waktu yang ditentukan dari tanggal |
DATEDIFF() | Mengembalikan jumlah hari antara dua tanggal |
DATE_FORMAT() | Menampilkan tanggal/waktu dengan format yang berbeda |
Fungsi Tanggal SQL Server
Tabel di bawah ini menampilkan fungsi-tipe tanggal yang paling penting di SQL Server:
Fungsi | Deskripsi |
---|---|
GETDATE() | Mengembalikan tanggal/waktu saat ini |
DATEPART() | Mengembalikan bagian tunggal tanggal/waktu |
DATEADD() | Menambahkan atau mengurangi interval waktu yang ditentukan di tanggal |
DATEDIFF() | Mengembalikan waktu antara dua tanggal |
CONVERT() | Menampilkan tanggal/waktu dengan format yang berbeda |
Tipe Data SQL Date
MySQL menggunakan tipe data berikut untuk menyimpan nilai tanggal atau tanggal/waktu di database:
- DATE - Format YYYY-MM-DD
- DATETIME - Format: YYYY-MM-DD HH:MM:SS
- TIMESTAMP - Format: YYYY-MM-DD HH:MM:SS
- YEAR - Format YYYY atau YY
SQL Server menggunakan tipe data berikut untuk menyimpan tanggal atau nilai tanggal/waktu di database:
- DATE - Format YYYY-MM-DD
- DATETIME - Format: YYYY-MM-DD HH:MM:SS
- SMALLDATETIME - Format: YYYY-MM-DD HH:MM:SS
- TIMESTAMP - Format: Angka yang unik
Pengolahan Tanggal SQL
Jika tidak melibatkan bagian waktu, kita dapat membandingkan tanggal dengan mudah!
Assumekan kita memiliki tabel "Orders" seperti ini:
OrderId | ProductName | OrderDate |
---|---|---|
1 | computer | 2008-12-26 |
2 | printer | 2008-12-26 |
3 | electrograph | 2008-11-12 |
4 | telephone | 2008-10-19 |
Sekarang, kami ingin memilih rekaman yang mempunyai OrderDate "2008-12-26" dari tabel di atas.
Kami menggunakan pernyataan SELECT di bawah:
SELECT * FROM Orders WHERE OrderDate='2008-12-26'
Hasil Koleksi:
OrderId | ProductName | OrderDate |
---|---|---|
1 | computer | 2008-12-26 |
3 | electrograph | 2008-12-26 |
Assumekan "Orders" seperti ini (perhatikan bagian waktu di kolom "OrderDate"):
OrderId | ProductName | OrderDate |
---|---|---|
1 | computer | 2008-12-26 16:23:55 |
2 | printer | 2008-12-26 10:45:26 |
3 | electrograph | 2008-11-12 14:12:08 |
4 | telephone | 2008-10-19 12:56:10 |
Jika kami menggunakan pernyataan SELECT di atas:
SELECT * FROM Orders WHERE OrderDate='2008-12-26'
Kami tidak mendapatkan hasil. Ini disebabkan karena query tidak mengandung bagian waktu tanggal.
Pemberitahuan:Jika Anda ingin menjadikan query mudah dan mudah dipelihara, jangan gunakan bagian waktu di tanggal!