MariaDB
 sql >> Teknologi Basis Data >  >> RDS >> MariaDB

Bagaimana DAYOFYEAR() Bekerja di MariaDB

Di MariaDB, DAYOFYEAR() adalah fungsi tanggal dan waktu bawaan yang mengembalikan hari dalam setahun dari tanggal tertentu.

Ia menerima satu argumen, yang merupakan tanggal Anda ingin mengekstrak hari dalam setahun.

Ini mengembalikan hari sebagai angka dalam rentang 1 ke 366 .

Sintaks

Sintaksnya seperti ini:

DAYOFYEAR(date) 

Dimana date adalah tanggal untuk mendapatkan hari dalam setahun.

Contoh

Ini contohnya:

SELECT DAYOFYEAR('2030-12-25'); 

Hasil:

+-------------------------+| DAYOFYEAR('2030-12-25') |+-------------------------+| 359 |+-------------------------+

Nilai Tanggal-waktu

Ini juga berfungsi dengan nilai datetime:

SELECT DAYOFYEAR('2030-02-01 10:30:45'); 

Hasil:

+----------------------------------+| DAYOFYEAR('2030-02-01 10:30:45') |+--------------------------------- -+| 32 |+-----------------------------------+

Nol Hari

Hasil nol hari dalam null .

Contoh:

SELECT DAYOFYEAR('2030-00-00'); 

Hasil:

+-------------------------+| DAYOFYEAR('2030-00-00') |+-------------------------+| NULL |+------------------------+

Tanggal Numerik

Dimungkinkan juga untuk melewatkan tanggal sebagai angka, asalkan masuk akal sebagai tanggal.

Contoh

SELECT DAYOFYEAR(20301125); 

Hasil:

+---------------------+| DAYOFYEAR (20301125) |+---------------------+| 329 |+---------------------+

Atau bahkan yang berikut (yang menggunakan tahun dua digit):

SELECT DAYOFYEAR(301125); 

Hasil:

+-------------------+| DAYOFYEAR(301125) |+-------------------+| 329 |+-------------------+

Tapi itu harus masuk akal sebagai kencan. Inilah yang terjadi jika saya menambah bagian hari menjadi hari yang tidak valid:

SELECT DAYOFYEAR(20300135); 

Hasil:

+---------------------+| DAYOFYEAR (20300135) |+---------------------+| NULL |+---------------------+

Pembatas Lainnya

Anda dapat menggunakan pembatas lain untuk tanggal. MariaDB cukup pemaaf dalam hal pembatas tanggal. Berikut adalah beberapa contoh yang valid:

SELECT 
    DAYOFYEAR('2030/06/25'),
    DAYOFYEAR('2030,06,25'),
    DAYOFYEAR('2030:06:25'),
    DAYOFYEAR('2030;06!25'); 

Hasil (menggunakan keluaran vertikal):

DAYOFYEAR('2030/06/25'):176DAYOFYEAR('2030,06,25'):176DAYOFYEAR('2030:06:25'):176DAYOFYEAR('2030;06!25'):176 

Tanggal Saat Ini

Kita dapat melewati NOW() sebagai argumen tanggal untuk menggunakan tanggal saat ini:

SELECT 
    NOW(),
    DAYOFYEAR(NOW()); 

Hasil:

+---------------------+------------------+| SEKARANG() | DAYOFYEAR(SEKARANG()) |+---------------------+------------------+| 2021-05-16 09:05:57 | 136 |+---------------------+------------------+

Argumen Tidak Valid

Saat memberikan argumen yang tidak valid, DAYOFYEAR() mengembalikan null :

SELECT DAYOFYEAR('Friday'); 

Hasil:

+---------------------+| DAYOFYEAR('Jumat') |+---------------------+| NULL |+---------------------+

Argumen Tidak Ada

Memanggil DAYOFYEAR() dengan jumlah argumen yang salah, atau tanpa memberikan argumen apa pun, menghasilkan kesalahan:

SELECT DAYOFYEAR(); 

Hasil:

ERROR 1582 (42000):Jumlah parameter salah dalam panggilan ke fungsi asli 'DAYOFYEAR'

Dan contoh lain:

SELECT DAYOFYEAR('2030-01-25', '2045-05-08'); 

Hasil:

ERROR 1582 (42000):Jumlah parameter salah dalam panggilan ke fungsi asli 'DAYOFYEAR'

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Menginstal dan Mengamankan MariaDB di CentOS 8

  2. Bagaimana COS() Bekerja di MariaDB

  3. Pertimbangan tentang Enkripsi untuk Data saat Istirahat untuk MariaDB

  4. Membuat Komponen Database Anda Sangat Tersedia (HA) melalui Load Balancer

  5. Panduan untuk Penerapan Cloud Database Otomatis