欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Mysql中TIMESTAMPDIFF函數(shù)的語(yǔ)法與練習(xí)案例

 更新時(shí)間:2022年09月18日 10:20:57   作者:山茶花開(kāi)時(shí)。  
在應(yīng)用時(shí)經(jīng)常要使用這兩個(gè)函數(shù)TIMESTAMPDIFF和TIMESTAMPADD,下面這篇文章主要給大家介紹了關(guān)于Mysql中TIMESTAMPDIFF函數(shù)的語(yǔ)法與練習(xí)案例的相關(guān)資料,需要的朋友可以參考下

TIMESTAMPDIFF函數(shù)用于計(jì)算兩個(gè)日期的時(shí)間差

語(yǔ)法結(jié)構(gòu)

TIMESTAMPDIFF(unit,datetime_expr1,datetime_expr2)

參數(shù)說(shuō)明 

unit: 日期比較返回的時(shí)間差單位,常用可選值如下:

SECOND:秒

MINUTE:分鐘

HOUR:小時(shí)

DAY:天

WEEK:星期

MONTH:月

QUARTER:季度

YEAR:年

datetime_expr1: 要比較的日期1

datetime_expr2: 要比較的日期2

TIMESTAMPDIFF函數(shù)返回datetime_expr2 - datetime_expr1的結(jié)果,其中datetime_expr1和datetime_expr2可以是DATE或DATETIME類型值

示例 

-- 相差:25秒
SELECT TIMESTAMPDIFF(SECOND,'2022-04-23 14:57:00','2022-04-23 14:57:25');
-- 相差:5分鐘
SELECT TIMESTAMPDIFF(MINUTE,'2022-04-23 15:00:00','2022-04-23 15:05:00');
-- 相差:5小時(shí)
SELECT TIMESTAMPDIFF(HOUR,'2022-04-23 11:20:00', '2022-04-23 16:20:00');
-- 相差:2天
SELECT TIMESTAMPDIFF(DAY,'2022-04-23 11:20:00', '2022-04-25 11:20:00');
-- 相差:1星期
SELECT TIMESTAMPDIFF(WEEK,'2022-04-23 11:20:00', '2022-04-30 11:20:00');
-- 相差:1月
SELECT TIMESTAMPDIFF(MONTH,'2022-04-23 11:20:00', '2022-05-30 11:20:00');
-- 相差:1季度
SELECT TIMESTAMPDIFF(QUARTER,'2022-04-23 11:20:00', '2022-07-23 11:20:00');
-- 相差:1年
SELECT TIMESTAMPDIFF(YEAR,'2022-04-23 11:20:00', '2023-04-23 11:20:00');

TIMESTAMPDIFF函數(shù)允許其搭配使用的參數(shù)datetime_expr1和datetime_expr2具有混合類型

案例

datetime_expr1是DATE類型值,datetime_expr2是DATETIME類型值,TIMESTAMPDIFF函數(shù)會(huì)將datetime_expr1自動(dòng)轉(zhuǎn)換成DATETIME類型值(即在日期后面加上時(shí)間“00:00:00”) 

-- 12
SELECT TIMESTAMPDIFF(HOUR,'2022-04-27','2022-04-27 12:00:00');
-- 12
SELECT TIMESTAMPDIFF(HOUR,'2022-04-27 00:00:00','2022-04-27 12:00:00');

上述兩行代碼等價(jià),返回的都是相同的結(jié)果

TIMESTAMPDIFF函數(shù)可以結(jié)合日期函數(shù)進(jìn)行搭配使用

-- 可以結(jié)合日期函數(shù)進(jìn)行搭配使用
SELECT TIMESTAMPDIFF(SECOND,'2022-04-23', CURRENT_DATE());
SELECT TIMESTAMPDIFF(SECOND,'2022-04-23 15:15:00',NOW());
SELECT TIMESTAMPDIFF(SECOND,'2022-04-23 15:15:00',CURRENT_TIMESTAMP());
 
-- 上述日期函數(shù)補(bǔ)充說(shuō)明
-- CURRENT_DATE()用于返回當(dāng)前時(shí)間
-- 示例結(jié)果:2022-04-27
SELECT CURRENT_DATE();
 
-- NOW()用于返回當(dāng)前日期和時(shí)間
-- 示例結(jié)果:2022-04-27 11:27:28
SELECT NOW();
 
-- CURRENT_TIMESTAMP()用于返回當(dāng)前日期和時(shí)間
-- 示例結(jié)果:2022-04-27 11:30:25
SELECT CURRENT_TIMESTAMP();

練習(xí)案例

導(dǎo)入數(shù)據(jù)

DROP TABLE IF EXISTS Student;
CREATE TABLE Student (
	SId VARCHAR (10),
	Sname VARCHAR (10),
	Sage datetime,
	Ssex VARCHAR (10)
)
ENGINE = InnoDB 
DEFAULT CHARSET = utf8;
INSERT INTO Student(SId,Sname,Sage,Ssex)
VALUES('01' , '趙雷' , '1990-01-01' , '男')
,('02' , '錢電' , '1990-12-21' , '男')
,('03' , '孫風(fēng)' , '1990-05-20' , '男')
,('04' , '李云' , '1990-08-06' , '男')
,('05' , '周梅' , '1991-12-01' , '女')
,('06' , '吳蘭' , '1992-03-01' , '女')
,('07' , '鄭竹' , '1989-07-01' , '女')
,('08' , '張三' , '2017-12-20' , '女')
,('09' , '李四' , '2017-12-25' , '女')
,('11' , '李四' , '2017-12-30' , '女')
,('12' , '孫七' , '2018-01-01' , '女');

Student表 

問(wèn)題:按照出生日期來(lái)算學(xué)生年齡,其中當(dāng)前月日<出生年月的月日,則年齡減一

解題思路

使用NOW()、TIMESTAMPDIFF()函數(shù)計(jì)算年齡

SELECT *, TIMESTAMPDIFF(YEAR,Sage,NOW())AS age
FROM Student;

結(jié)果展示:

總結(jié) 

到此這篇關(guān)于Mysql中TIMESTAMPDIFF函數(shù)的語(yǔ)法與練習(xí)案例的文章就介紹到這了,更多相關(guān)Mysql中TIMESTAMPDIFF函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MySQL筆記之觸發(fā)器的應(yīng)用

    MySQL筆記之觸發(fā)器的應(yīng)用

    觸發(fā)器是由事件來(lái)觸發(fā)某個(gè)操作,這些事件包括INSERT語(yǔ)句,UPDATE語(yǔ)句和DELETE語(yǔ)句
    2013-05-05
  • JDBC連接MySQL出現(xiàn)的問(wèn)題

    JDBC連接MySQL出現(xiàn)的問(wèn)題

    采用JDBC連接MySQL數(shù)據(jù)庫(kù),JDBC驅(qū)動(dòng)已經(jīng)添加到eclipse的項(xiàng)目構(gòu)建路徑里了,按理來(lái)說(shuō)應(yīng)該一切正常。運(yùn)行項(xiàng)目后提示“無(wú)法加載驅(qū)動(dòng)”。
    2010-12-12
  • MySQL子查詢用法實(shí)例分析

    MySQL子查詢用法實(shí)例分析

    這篇文章主要介紹了MySQL子查詢用法,結(jié)合實(shí)例形式對(duì)比分析了MySQL子查詢的設(shè)置技巧,需要的朋友可以參考下
    2016-04-04
  • mysql定時(shí)任務(wù)(event事件)實(shí)現(xiàn)詳解

    mysql定時(shí)任務(wù)(event事件)實(shí)現(xiàn)詳解

    這篇文章主要介紹了mysql定時(shí)任務(wù)(event事件)實(shí)現(xiàn)詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • MySQL事件與觸發(fā)器專題精煉

    MySQL事件與觸發(fā)器專題精煉

    觸發(fā)器是SQLserver提供給程序員和數(shù)據(jù)分析員來(lái)保證數(shù)據(jù)完整性的一種方法,它是與表事件相關(guān)的特殊的存儲(chǔ)過(guò)程,事件是在?MySQL?5.1后引入的,有點(diǎn)類似操作系統(tǒng)的計(jì)劃任務(wù),但是周期性任務(wù)是內(nèi)置在MySQL服務(wù)端執(zhí)行的
    2022-03-03
  • win10下mysql 8.0.11壓縮版安裝詳細(xì)教程

    win10下mysql 8.0.11壓縮版安裝詳細(xì)教程

    這篇文章主要為大家詳細(xì)介紹了win10下mysql 8.0.11壓縮版安裝詳細(xì)教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • MySQL存儲(chǔ)過(guò)程的傳參和流程控制示例講解

    MySQL存儲(chǔ)過(guò)程的傳參和流程控制示例講解

    這篇文章主要介紹了MySQL存儲(chǔ)過(guò)程的傳參和流程控制示例講解,?repeat和Loop區(qū)別是repeat有自己退出循環(huán)的語(yǔ)句until,Loop使用的是if判斷語(yǔ)句,本文結(jié)合示例代碼詳細(xì)講解,需要的朋友可以參考下
    2023-02-02
  • SQL中row_number()?over(partition?by)的用法說(shuō)明

    SQL中row_number()?over(partition?by)的用法說(shuō)明

    這篇文章主要介紹了SQL中row_number()?over(partition?by)的用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • 一次MySQL慢查詢導(dǎo)致的故障

    一次MySQL慢查詢導(dǎo)致的故障

    這篇文章主要介紹了如何對(duì)MySQL慢查詢導(dǎo)致的故障進(jìn)行處理,慢查詢是我們?cè)趍ysql中經(jīng)常需要使用到的一個(gè)很方便的功能,慢查詢對(duì)于跟蹤有問(wèn)題的查詢很有用,需要的朋友可以參考下
    2015-08-08
  • PHP中常用的幾個(gè) mysql操作

    PHP中常用的幾個(gè) mysql操作

    本篇文章是對(duì)關(guān)于php操作mysql執(zhí)行數(shù)據(jù)庫(kù)查詢的一些常用操作進(jìn)行了詳細(xì)的匯總介紹,非常的細(xì)致全面,也很簡(jiǎn)單,需要的朋友參考下
    2015-04-04

最新評(píng)論