Rumah >pangkalan data >tutorial mysql >Tarikh dan masa MySql: cara memproses dan menukar

Tarikh dan masa MySql: cara memproses dan menukar

PHPz
PHPzasal
2023-06-16 08:48:462172semak imbas

MySql ialah sistem pengurusan pangkalan data hubungan yang biasa digunakan yang menyokong penyimpanan data dan operasi berbilang jenis tarikh dan masa. Artikel ini akan memperkenalkan cara memproses dan menukar data tarikh dan masa dalam MySql.

1. Jenis tarikh dan masa

MySql menyokong berbilang jenis tarikh dan masa, termasuk DATE, TIME, DATETIME, TIMESTAMP, dsb. Takrif khusus jenis ini adalah seperti berikut:

  1. TARIKH: mewakili tarikh dalam format 'TTTT-MM-DD'. Julat yang sah ialah '1000-01-01' hingga '9999-12-31'.
  2. MASA: menunjukkan masa dalam format 'HH:MM:SS'. Julat yang sah ialah '-838:59:59' hingga '838:59:59'.
  3. DATETIME: Mewakili tarikh dan masa dalam format 'YYYY-MM-DD HH:MM:SS'. Julat yang sah ialah '1000-01-01 00:00:00' hingga '9999-12-31 23:59:59'.
  4. TIMESTAMP: Mewakili tarikh dan masa dalam format 'YYYY-MM-DD HH:MM:SS'. Julat yang sah ialah '1970-01-01 00:00:01' hingga '2038-01-19 03:14:07'.

2. Fungsi tarikh dan masa

MySql menyediakan pelbagai fungsi tarikh dan masa untuk memproses dan menukar data tarikh dan masa. Fungsi yang biasa digunakan termasuk:

  1. DATE_FORMAT(tarikh,format): Formatkan tarikh ke dalam format yang ditentukan. Sebagai contoh, untuk memformat '2022-08-25' sebagai '25 Ogos 2022', anda boleh menggunakan pernyataan berikut: SELECT DATE_FORMAT('2022-08-25','%M %d, %Y').
  2. DATE_ADD(tarikh,INTERVAL expr unit): Tambahkan selang masa yang ditentukan pada tarikh. Sebagai contoh, untuk menambah '2022-08-25' kepada 3 bulan, anda boleh menggunakan penyata berikut: SELECT DATE_ADD('2022-08-25', INTERVAL 3 MONTH).
  3. DATE_SUB(tarikh, INTERVAL expr unit): Tolak selang masa yang ditentukan daripada tarikh.
  4. DATEDIFF(date1,date2): Kira perbezaan hari antara dua tarikh. Contohnya, untuk mengira perbezaan hari antara '2022-08-01' dan '2022-08-25', anda boleh menggunakan pernyataan berikut: SELECT DATEDIFF('2022-08-25','2022-08-01 ').
  5. DAYOFWEEK(tarikh): Mengembalikan hari dalam minggu yang sepadan dengan tarikh. Sebagai contoh, untuk mengembalikan hari dalam minggu yang sepadan dengan '2022-08-25', anda boleh menggunakan pernyataan berikut: SELECT DAYOFWEEK('2022-08-25').
  6. MINGGU(tarikh[,mod]): Mengembalikan nombor minggu tarikh. Parameter mod digunakan untuk menentukan tarikh permulaan minggu, yang boleh menjadi nilai dari 0 (menunjukkan Ahad) hingga 7 (menunjukkan Sabtu Nilai lalai ialah 0).
  7. NOW(): Mengembalikan tarikh dan masa semasa.
  8. TIMESTAMPDIFF(unit,mula,tamat): Kira perbezaan masa antara dua tarikh dalam unit yang ditentukan. Sebagai contoh, untuk mengira perbezaan dalam bulan antara '2022-01-01' dan '2022-08-25', anda boleh menggunakan pernyataan berikut: SELECT TIMESTAMPDIFF(MONTH,'2022-01-01','2022-08 -25' ).
  9. FROM_UNIXTIME(unix_timestamp[,format]): Tukarkan Unix timestamp kepada format tarikh dan masa yang ditentukan. Contohnya, untuk menukar cap waktu Unix 1234567890 kepada format 'YYYY-MM-DD HH:MM:SS', anda boleh menggunakan pernyataan berikut: SELECT FROM_UNIXTIME(1234567890,'%Y-%m-%d %H:%i: %s ').

3. Penukaran tarikh dan masa

Dalam MySql, anda boleh menggunakan fungsi STR_TO_DATE dan DATE_FORMAT untuk menukar tarikh dan masa. STR_TO_DATE boleh menukar rentetan kepada jenis tarikh dan masa, manakala DATE_FORMAT boleh menukar jenis tarikh dan masa kepada rentetan. Sebagai contoh, untuk menukar rentetan '20220825' kepada jenis tarikh, anda boleh menggunakan pernyataan berikut: SELECT STR_TO_DATE('20220825','%Y%m%d').

4. Nota

Apabila menggunakan data tarikh dan masa, anda perlu memberi perhatian kepada perkara berikut:

  1. Ketepatan penyimpanan masa ialah saat secara lalai , dan anda boleh mengubah suai data mengikut definisi jadual untuk meningkatkan ketepatan.
  2. Jenis tarikh dan masa dibandingkan dan diisih dalam bentuk rentetan. Oleh itu, perhatian perlu diberikan kepada ketekalan format untuk mengelakkan ralat yang tidak dijangka.
  3. Apabila melakukan pengiraan tarikh dan masa, anda perlu mengambil kira kesan faktor seperti zon waktu dan masa penjimatan siang.

Ringkasnya, menguasai kemahiran pemprosesan dan penukaran tarikh dan masa dalam MySql boleh membantu kami mengurus dan menganalisis data dengan lebih cekap.

Atas ialah kandungan terperinci Tarikh dan masa MySql: cara memproses dan menukar. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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