Rumah > pangkalan data > tutorial mysql > Penjelasan terperinci tentang penggunaan fungsi tarikh dalam pembelajaran MySQL

Penjelasan terperinci tentang penggunaan fungsi tarikh dalam pembelajaran MySQL

WBOY
Lepaskan: 2022-08-15 20:19:07
ke hadapan
1983 orang telah melayarinya

Artikel ini membawa anda pengetahuan yang berkaitan tentang mysql Ia terutamanya memperkenalkan fungsi tarikh MySQL, termasuk mendapatkan fungsi masa sistem, fungsi pemformatan tarikh, dll. Mari kita pelajari tentangnya bersama-sama. membantu semua orang.

Penjelasan terperinci tentang penggunaan fungsi tarikh dalam pembelajaran MySQL

Pembelajaran yang disyorkan: tutorial video mysql

Dapatkan fungsi masa sistem

"NOW()" fungsi boleh Dapatkan tarikh dan masa sistem semasa dalam format berikut: "YYYY-MM-DD hh:mm:ss" (unit jam di sini ialah sistem 24 jam)

Fungsi "CURDATE()" boleh mendapatkan tarikh dan masa sistem semasa Tarikh, formatnya adalah seperti berikut: "YYYY-MM-DD"

Fungsi "CURTIME()" boleh mendapatkan masa sistem semasa, formatnya adalah seperti berikut: "hh :mm:ss" (format 24 jam)

SELECT NOW();            -- 返回结果 "2020-06-10 17:22:51"  (示例)
Salin selepas log masuk
SELECT CURDATE();        -- 返回结果 "2020-06-10"
Salin selepas log masuk
SELECT CURTIME();        -- 返回结果 "17:22:52"
Salin selepas log masuk

Fungsi pemformatan tarikh

Fungsi "DATE_FORMAT()" digunakan untuk memformat tarikh dan boleh membantu kami mengeluarkan maklumat tarikh yang sangat berguna

Sintaksnya adalah seperti berikut :

FORMAT_TARIKH(tarikh, ungkapan)

SELECT ename, DATE_FORMAT(hiredate,"%Y") AS "入职日期" FROM t_emp;
Salin selepas log masuk

占位符作用占位符作用
%Y年份%m月份
%d日期%w星期(数字)- (0为周日)
%W星期(名称)- (英文)%j本年的第几天
%U本年的第几周%H小时(24)
%h小时(12)%i分钟
%s%r时间(24)
%T 时间(12)

Amalan fungsi tarikh

Gunakan "fungsi tarikh" untuk menanyakan hari dalam minggu apabila hari lahir anda.

SELECT DATE_FORMAT("2018-01-01","%W");        -- 返回结果为 "Monday"
Salin selepas log masuk

Latihan Fungsi Tarikh

Gunakan "fungsi tarikh" untuk bertanya berapa ramai pekerja yang menyertai syarikat pada separuh pertama tahun 1981?

SELECT COUNT(*)
FROM t_emp
WHERE DATE_FORMAT(hiredate,"%Y") = 1981
AND DATE_FORMAT(hiredate,"%m") <= 6;
Salin selepas log masuk

Nota pengiraan tarikh

Dalam MySQL, dua tarikh tidak boleh ditambah atau ditolak secara langsung; ditolak daripada nombor.

Sebabnya tarikh itu adalah unit pengiraan khas, dan asasnya tidak seperti perpuluhan biasa.

Walaupun kami menggunakan tarikh untuk melaksanakan operasi "1" tanpa menyebabkan ralat sintaks, hasil yang diperoleh ialah nombor tulen, bukan hasil dalam format tarikh yang kami mahu. (Contoh di bawah) Fungsi

SELECT ename, hiredate, hiredate+1 FROM t_emp;
Salin selepas log masuk

Pengiraan offset tarikh

DATE_ADD() boleh melaksanakan pengiraan offset tarikh dan pemprosesan dalam unit masa Hidup, agak fleksibel.

Sintaks adalah seperti berikut:

SELECT DATE_ADD("原始日期", INTERVAL, 偏移量, 时间单位)        -- INTERVAL 是 关键字
Salin selepas log masuk

"Fungsi DATE_ADD()" Kes demonstrasi adalah seperti berikut

SELECT DATE_ADD(NOW(), INTERVAL 10 DAY);         -- 得到的结果为 10 天 之后的日期时间
Salin selepas log masuk
SELECT DATE_ADD(NOW(), INTERVAL -500 MINUTE);         -- 得到的结果为 500 分钟 之前的日期时间
Salin selepas log masuk
SELECT DATE_ADD(DATE_ADD(NOW(), INTERVAL -6 MONTH), INTERVAL -3 DAY);         -- 得到的结果为 6 个月 3 天 之前的日期时间
Salin selepas log masuk
SELECT 
DATE_FORMAT(
DATE_ADD(DATE_ADD(NOW(), INTERVAL -6 MONTH), INTERVAL -3 DAY) , "%Y-%m-%d") AS DATE;     -- 返回 "%Y-%m-%d" 格式结果
Salin selepas log masuk

Kira jarak antara tarikh Bilangan hari

Fungsi DATEDIFF() digunakan untuk mengira bilangan hari perbezaan antara dua tarikh Sintaks adalah seperti berikut:

DATEDIFF(. "tarikh", "tarikh")

Soal maklumat pekerja di 10 jabatan dengan pendapatan tahunan melebihi 15,000 dan pengalaman bekerja lebih daripada 20 tahun.

SELECT empno, ename, sal, hiredate
FROM t_emp
WHERE deptno = 10 
AND (sal + IFNULL(comm,0)) * 12 >=15000
AND DATEDIFF(NOW(),hiredate)/365 >= 20

-- IFNULL(expr1,expr2):IFNULL 函数的语法,当第一个参数的值为null 的时候,则返回第二个参数的值
-- DATEDIFF(expr1,expr2):DATEDIFF 函数的语法,计算第一个日期与第二个日期的偏差时间差
-- NOW():NOW 函数可以获得当前日期
Salin selepas log masuk

Pembelajaran yang disyorkan: tutorial video mysql

Atas ialah kandungan terperinci Penjelasan terperinci tentang penggunaan fungsi tarikh dalam pembelajaran MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:jb51.net
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