Rumah > Artikel > pangkalan data > Penjelasan terperinci tentang penggunaan fungsi tarikh dalam pembelajaran MySQL
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.
Pembelajaran yang disyorkan: tutorial video mysql
"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" (示例)
SELECT CURDATE(); -- 返回结果 "2020-06-10"
SELECT CURTIME(); -- 返回结果 "17:22:52"
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;
占位符 | 作用 | 占位符 | 作用 |
---|---|---|---|
%Y | 年份 | %m | 月份 |
%d | 日期 | %w | 星期(数字)- (0为周日) |
%W | 星期(名称)- (英文) | %j | 本年的第几天 |
%U | 本年的第几周 | %H | 小时(24) |
%h | 小时(12) | %i | 分钟 |
%s | 秒 | %r | 时间(24) |
%T | 时间(12) |
Gunakan "fungsi tarikh" untuk menanyakan hari dalam minggu apabila hari lahir anda.
SELECT DATE_FORMAT("2018-01-01","%W"); -- 返回结果为 "Monday"
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;
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;
DATE_ADD() boleh melaksanakan pengiraan offset tarikh dan pemprosesan dalam unit masa Hidup, agak fleksibel.
Sintaks adalah seperti berikut:
SELECT DATE_ADD("原始日期", INTERVAL, 偏移量, 时间单位) -- INTERVAL 是 关键字
"Fungsi DATE_ADD()" Kes demonstrasi adalah seperti berikut
SELECT DATE_ADD(NOW(), INTERVAL 10 DAY); -- 得到的结果为 10 天 之后的日期时间
SELECT DATE_ADD(NOW(), INTERVAL -500 MINUTE); -- 得到的结果为 500 分钟 之前的日期时间
SELECT DATE_ADD(DATE_ADD(NOW(), INTERVAL -6 MONTH), INTERVAL -3 DAY); -- 得到的结果为 6 个月 3 天 之前的日期时间
SELECT DATE_FORMAT( DATE_ADD(DATE_ADD(NOW(), INTERVAL -6 MONTH), INTERVAL -3 DAY) , "%Y-%m-%d") AS DATE; -- 返回 "%Y-%m-%d" 格式结果
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 函数可以获得当前日期
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!