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

Bagaimana STR_TO_DATE() Bekerja di MariaDB

Di MariaDB, STR_TO_DATE() adalah fungsi tanggal dan waktu bawaan yang mengembalikan nilai tanggal waktu, berdasarkan string tanggal dan string format yang diberikan.

STR_TO_DATE() fungsi adalah kebalikan dari DATE_FORMAT() fungsi.

Sintaks

Sintaksnya seperti ini:

STR_TO_DATE(str,format)

Dimana str adalah string tanggal, dan format adalah string format yang menentukan format string tanggal.

Contoh

Ini contohnya:

SELECT STR_TO_DATE('Monday, May 24, 2021', '%W, %M %e, %Y');

Hasil:

+------------------------------------------------------+
| STR_TO_DATE('Monday, May 24, 2021', '%W, %M %e, %Y') |
+------------------------------------------------------+
| 2021-05-24                                           |
+------------------------------------------------------+

String format terdiri dari sejumlah penentu format yang memberi tahu MariaDB bagaimana tanggal dalam argumen pertama diformat. Lihat MariaDB Format Strings untuk daftar penentu format yang dapat digunakan dalam format string.

Dalam contoh ini, hasilnya adalah nilai tanggal, karena format string hanya berisi bagian tanggal.

Mengembalikan Nilai Tanggal-waktu

Berikut ini contoh yang mengembalikan nilai datetime:

SELECT STR_TO_DATE('May 24, 2021', '%M %e, %Y %H:%i:%S');

Hasil:

+---------------------------------------------------+
| STR_TO_DATE('May 24, 2021', '%M %e, %Y %H:%i:%S') |
+---------------------------------------------------+
| 2021-05-24 00:00:00                               |
+---------------------------------------------------+

Dalam contoh ini, bagian waktu ditambahkan, meskipun argumen pertama tidak berisi bagian waktu.

Berikut contoh lain yang menyertakan bagian waktu dalam argumen pertama:

SELECT 
STR_TO_DATE('10:30:45 on May 24, 2021', '%H:%i:%S on %M %e, %Y');

Hasil:

+------------------------------------------------------------------+
| STR_TO_DATE('10:30:45 on May 24, 2021', '%H:%i:%S on %M %e, %Y') |
+------------------------------------------------------------------+
| 2021-05-24 10:30:45                                              |
+------------------------------------------------------------------+

Ini satu lagi, di mana string tanggal menggunakan nilai waktu yang lebih longgar:

SELECT 
STR_TO_DATE('10.30pm on May 24, 2021', '%H.%ipm on %M %e, %Y');

Hasil:

+----------------------------------------------------------------+
| STR_TO_DATE('10.30pm on May 24, 2021', '%H.%ipm on %M %e, %Y') |
+----------------------------------------------------------------+
| 2021-05-24 10:30:00                                            |
+----------------------------------------------------------------+

Mengembalikan Nilai Waktu

Di sini, kami mengubah format string untuk mengembalikan nilai waktu saja:

SELECT STR_TO_DATE('10:30:45 on May 24, 2021', '%H:%i:%S');

Hasil:

+-----------------------------------------------------+
| STR_TO_DATE('10:30:45 on May 24, 2021', '%H:%i:%S') |
+-----------------------------------------------------+
| 10:30:45                                            |
+-----------------------------------------------------+

String Tanggal/Waktu Ilegal

Melewati string tanggal ilegal mengembalikan null dengan peringatan.

Contoh:

SELECT STR_TO_DATE('Humpday, May 26, 2021', '%W, %M %e, %Y');

Hasil:

+-------------------------------------------------------+
| STR_TO_DATE('Humpday, May 26, 2021', '%W, %M %e, %Y') |
+-------------------------------------------------------+
| NULL                                                  |
+-------------------------------------------------------+
1 row in set, 1 warning (0.009 sec)

Mari kita lihat peringatannya:

SHOW WARNINGS;

Hasil:

+---------+------+----------------------------------------------------------------------------+
| Level   | Code | Message                                                                    |
+---------+------+----------------------------------------------------------------------------+
| Warning | 1411 | Incorrect datetime value: 'Humpday, May 26, 2021' for function str_to_date |
+---------+------+----------------------------------------------------------------------------+

Argumen Tidak Ada

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

SELECT STR_TO_DATE();

Hasil:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'STR_TO_DATE'

Dan contoh lain:

SELECT STR_TO_DATE('Friday, 28 May 2021');

Hasil:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'STR_TO_DATE'

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ClusterControl 1.5 - Verifikasi Cadangan Otomatis, Bangun Budak Dari Cadangan, dan Integrasi Cloud

  2. Bagaimana SUBSTRING() Bekerja di MariaDB

  3. 2 Cara Mengembalikan Kode ASCII untuk Karakter yang Diberikan di MariaDB

  4. Bagaimana TO_DAYS() Bekerja di MariaDB

  5. Bagaimana SUBTIME() Bekerja di MariaDB