Cara menggunakan period_add mysql

ADDDATE() adalah sinonim untuk DATE ADD ketika dipanggil menggunakan bentuk INTERVAL dari argumen kedua (). TANGGAL SUB adalah sinonim untuk fungsi terkait SUBDATE() (). Interval Temporal memiliki lebih banyak informasi tentang argumen unit INTERVAL.

Advertisements

Contoh:

mysql> SELECT DATE_ADD('2022-01-02', INTERVAL 31 HARI); -> '2022-02-02' mysql> PILIH TAMBAH ('2022-01-02', INTERVAL 31 HARI); -> '2022-02-02'

Bergantung pada apakah fungsi tersebut digunakan dalam konteks string atau numerik, fungsi ini mengembalikan tanggal saat ini sebagai nilai dalam format 'YYYY-MM-DD' atau 'YYYYMMDD'.

Contoh:

mysql> SELECT CURDATE(); -> '2022-06-13' mysql> SELECT CURDATE() + 0; -> 20220613

Aritmatika tanggal dilakukan oleh fungsi-fungsi ini. Tanggal mulai atau nilai datetime ditentukan oleh parameter tanggal. Nilai interval yang akan ditambahkan atau dikurangi dari tanggal mulai ditentukan oleh expr, yang merupakan ekspresi. expr dievaluasi sebagai string; untuk interval negatif, mungkin dimulai dengan -. unit adalah kata kunci yang menentukan bagaimana ekspresi harus dipahami dalam unit.

Advertisements

Contoh:

mysql> SELECT DATE_ADD('2022-05-01',INTERVAL 1 HARI); -> '2022-05-02' mysql> SELECT DATE_ADD('2020-12-31 23:59:59', -> INTERVAL 1 DETIK); -> '2022-01-01 00:00:00' mysql> SELECT DATE_ADD('2022-12-31 23:59:59', -> INTERVAL 1 HARI); -> '2022-01-01 23:59:59'

Nilai tanggal diformat sesuai dengan format string.

String format dapat menyertakan penentu yang ditunjukkan pada tabel di bawah ini. Sebelum memformat karakter penentu, karakter persen diperlukan. Fungsi lain yang menggunakan specifier adalah STR TO DATE(), TIME FORMAT(), dan UNIX TIMESTAMP()() ().

DATEDIFF() mengembalikan selisih hari (dalam jumlah hari) antara dua tanggal, expr1 dan expr2. Ekspresi tanggal atau tanggal dan waktu adalah expr1 dan expr2. Dalam perhitungan, hanya bagian tanggal dari data yang dipertimbangkan.

Advertisements

Contoh:

mysql> SELECT DATEDIFF('2022-12-31 23:59:59','2022-12-30');

-> 1

mysql> SELECT DATEDIFF('2022-11-30 23:59:59','2022-12-31');

-> -31

HARI() fungsi

DAYOFMONTH adalah sinonim untuk DAY() .Jadi ada beberapa fungsi DAY() yaitu sebagai berikut.

DAYNAME() fungsi

DAYNAME(tanggal)

Untuk tanggal, mengembalikan nama hari kerja. Nilai variabel sistem nama waktu menentukan bahasa yang digunakan untuk nama tersebut.

Advertisements
mysql> SELECT DAYNAME('2022-02-03'); -> 'Sabtu'

DAYOFMONTH() fungsi

BULAN HARI(tanggal)

Mengembalikan hari bulan untuk tanggal, dalam rentang 1 hingga 31, atau 0 untuk tanggal yang memiliki bagian hari nol, seperti '0000-00-00' atau '2022-00-00'.

Contoh:

mysql> SELECT DAYOFMONTH('2022-02-03'); -> 3

DAYOFWEEK() fungsi

Indeks hari kerja untuk hari tertentu (1 = Minggu, 2 = Senin,…, 7 = Sabtu) dikembalikan. Standar ODBC diikuti oleh nilai indeks ini.

Contoh:

mysql> PILIH HARI MINGGU('2022-02-03'); -> 7

DAYOFYEAR() fungsi

Dalam rentang 1 hingga 366, fungsi ini mengembalikan hari dalam setahun untuk tanggal yang ditentukan.

Contoh:

mysql> SELECT DAYOFYEAR('2022-02-03'); -> 34

From_days() fungsi

Mengembalikan nilai DATE yang diberikan nomor hari N.

mysql> PILIH DARI_DAYS(730669); -> '2022-07-03'

Jam() fungsi

Untuk waktu, ia mengembalikan jam. Untuk nilai waktu hari, hasil pengembalian berkisar dari 0 hingga 23. TIME, di sisi lain, memiliki rentang nilai yang jauh lebih luas, oleh karena itu HOUR dapat mengembalikan angka yang lebih besar dari 23.

mysql> SELECT DATE_ADD('2022-01-02', INTERVAL 31 HARI); -> '2022-02-02' mysql> PILIH TAMBAH ('2022-01-02', INTERVAL 31 HARI); -> '2022-02-02'
0

Untuk waktu, ia mengembalikan jam. Untuk nilai waktu hari, hasil pengembalian berkisar dari 0 hingga 23. TIME, di sisi lain, memiliki rentang nilai yang jauh lebih luas, oleh karena itu HOUR dapat mengembalikan angka yang lebih besar dari 23.

ADDTIME() memberikan hasil penambahan expr2 ke expr1. Ekspresi waktu atau datetime adalah expr1, dan ekspresi waktu adalah expr2.

Jenis pengembalian metode ini dan fungsi SUBTIME() telah diputuskan sebagai berikut sejak MySQL 8.0.28:

Jenis yang dikembalikan adalah TIME jika input pertama adalah parameter dinamis (seperti dalam pernyataan yang disiapkan).

Advertisements

Jika tidak, tipe penyelesaian fungsi diperoleh dari tipe penyelesaian argumen pertama

Contoh:

mysql> SELECT DATE_ADD('2022-01-02', INTERVAL 31 HARI); -> '2022-02-02' mysql> PILIH TAMBAH ('2022-01-02', INTERVAL 31 HARI); -> '2022-02-02'
1

Bergantung pada apakah fungsi dipanggil dalam lingkungan string atau numerik, ia mengembalikan waktu saat ini sebagai nilai dalam format 'hh:mm:ss' atau hhmmss. Zona waktu sesi digunakan untuk mengekspresikan nilai.

Nilai kembalian berisi komponen pecahan detik dari banyak digit jika opsi fsp digunakan untuk menunjukkan presisi pecahan detik dari 0 hingga 6.

Contoh:

mysql> SELECT DATE_ADD('2022-01-02', INTERVAL 31 HARI); -> '2022-02-02' mysql> PILIH TAMBAH ('2022-01-02', INTERVAL 31 HARI); -> '2022-02-02'
2

Bergantung pada apakah fungsi dipanggil dalam lingkungan string atau numerik, ia mengembalikan waktu saat ini sebagai nilai dalam format 'hh:mm:ss' atau hhmmss. Zona waktu sesi digunakan untuk mengekspresikan nilai.

Bergantung pada apakah fungsi dipanggil dalam lingkungan string atau numerik, ia mengembalikan waktu saat ini sebagai nilai dalam format 'hh:mm:ss' atau hhmmss. Zona waktu sesi digunakan untuk mengekspresikan nilai.

Contoh:

mysql> SELECT DATE_ADD('2022-01-02', INTERVAL 31 HARI); -> '2022-02-02' mysql> PILIH TAMBAH ('2022-01-02', INTERVAL 31 HARI); -> '2022-02-02'
2

fungsi last_day()

Mengembalikan nilai yang setara untuk hari terakhir bulan yang diberikan nilai tanggal atau waktu.

Advertisements

Contoh:

mysql> SELECT DATE_ADD('2022-01-02', INTERVAL 31 HARI); -> '2022-02-02' mysql> PILIH TAMBAH ('2022-01-02', INTERVAL 31 HARI); -> '2022-02-02'
4

SEKARANG adalah sinonim untuk LOCALTIME dan LOCALTIME() ().

mysql> SELECT DATE_ADD('2022-01-02', INTERVAL 31 HARI); -> '2022-02-02' mysql> PILIH TAMBAH ('2022-01-02', INTERVAL 31 HARI); -> '2022-02-02'
5

Mengembalikan nilai tanggal, tahun, dan hari dalam setahun untuk tahun tertentu. Nilai hari tahun harus lebih besar dari 0; jika tidak, hasilnya akan NULL.

Tanggal dan waktu saat ini dikembalikan oleh metode LOCALTIMESTAMP().

Perhatikan bahwa tanggal dan waktu dikembalikan sebagai string (YYYY-MM-DD HH-MM-SS) atau sebagai YYYYMMDDHHMMSS.