DATE_FORMAT_TZ mengonversi nilai TIMESTAMP menjadi string terformat dalam zona waktu yang ditentukan.
Sintaksis
VARCHAR DATE_FORMAT_TZ(TIMESTAMP timestamp, VARCHAR format, VARCHAR timezone)
VARCHAR DATE_FORMAT_TZ(TIMESTAMP timestamp, VARCHAR timezone)Kedua bentuk tersebut mengembalikan string VARCHAR.
Parameter input
| Parameter | Tipe data | Deskripsi |
|---|---|---|
timestamp | TIMESTAMP | Timestamp yang akan dikonversi. |
format | VARCHAR | Format tanggal output. Contoh: yyyy-MM-dd HH:mm:ss. |
timezone | VARCHAR | Zona waktu tujuan. Contoh: Asia/Shanghai. |
Catatan penggunaan
Fungsi ini menggeser timestamp ke zona waktu tujuan. Sebagai contoh, epoch Unix
0diAsia/Shanghai(UTC+8) menjadi1970-01-01 08:00:00.
Contoh
Data uji
| timestamp1 (TIMESTAMP) | format1 (VARCHAR) | timezone1 (VARCHAR) |
|---|---|---|
| 0 | yyyy-MM-dd HH:mm:ss | Asia/Shanghai |
Pernyataan uji
SELECT
DATE_FORMAT_TZ(timestamp1, format1, timezone1) AS var1,
DATE_FORMAT_TZ(timestamp1, timezone1) AS var2
FROM T1;Hasil uji
| var1 (VARCHAR) | var2 (VARCHAR) |
|---|---|
| 1970-01-01 08:00:00 | 1970-01-01 08:00:00 |
Epoch Unix 0 adalah 1970-01-01 00:00:00 UTC. Setelah digeser ke Asia/Shanghai (UTC+8), hasilnya adalah 1970-01-01 08:00:00.