Rumah > pangkalan data > tutorial mysql > Bagaimanakah MySQL mentafsir nombor dan rentetan tanpa pembatas sebagai tarikh?

Bagaimanakah MySQL mentafsir nombor dan rentetan tanpa pembatas sebagai tarikh?

王林
Lepaskan: 2023-09-08 13:57:12
ke hadapan
1141 orang telah melayarinya

MySQL 如何将没有分隔符的数字和字符串解释为日期?

Jika rentetan atau nombor, walaupun tanpa sebarang pembatas, dalam format YYYYMMDDHHMMSS atau YYMMDDHHMMSS masuk akal apabila menyediakan tarikh, maka MySQL mentafsir rentetan itu sebagai tarikh yang sah.

Diberi contoh tarikh yang sah dan tidak sah -

mysql> Select Timestamp(20171022040536);
+---------------------------+
| Timestamp(20171022040536) |
+---------------------------+
| 2017-10-22 04:05:36       |
+---------------------------+
1 row in set (0.00 sec)

mysql> Select Timestamp('20171022040536');
+-----------------------------+
| Timestamp('20171022040536') |
+-----------------------------+
| 2017-10-22 04:05:36         |
+-----------------------------+
1 row in set (0.00 sec)

mysql> Select Timestamp('171022040536');
+---------------------------+
| Timestamp('171022040536') |
+---------------------------+
| 2017-10-22 04:05:36       |
+---------------------------+
1 row in set (0.00 sec)
Salin selepas log masuk

Pertanyaan di atas menunjukkan contoh rentetan yang sah serta nombor, yang MySQL boleh tafsirkan sebagai nilai tarikh.

mysql> Select Timestamp('20171022048536');
+-----------------------------+
| Timestamp('20171022048536') |
+-----------------------------+
| NULL                        |
+-----------------------------+
1 row in set, 1 warning (0.00 sec)
Salin selepas log masuk

Pertanyaan di atas ialah contoh rentetan yang tidak sah. MySQL mengembalikan NULL kerana rentetan mempunyai nilai yang salah (85) dalam masa satu minit.

mysql> Select Timestamp('20171322040536');
+-----------------------------+
| Timestamp('20171322040536') |
+-----------------------------+
| NULL                        |
+-----------------------------+
1 row in set, 1 warning (0.00 sec)
Salin selepas log masuk

Dalam pertanyaan di atas, MySQL mengembalikan NULL kerana nilai bulan rentetan (13) adalah salah.

Atas ialah kandungan terperinci Bagaimanakah MySQL mentafsir nombor dan rentetan tanpa pembatas sebagai tarikh?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan