mysql時(shí)間是varchar類(lèi)型進(jìn)行比較
一般情況下數(shù)據(jù)庫(kù)時(shí)間類(lèi)型都是以datetime、timestamp等格式進(jìn)行存儲(chǔ)的 , 但有時(shí)也會(huì)出現(xiàn)varchar類(lèi)型 , 這個(gè)時(shí)候在sql中比較時(shí)間類(lèi)型就需要用到函數(shù)STR_TO_DATE(str, format);
STR_TO_DATE(str, format)函數(shù)是DATE_FORMAT()函數(shù)的反函數(shù) , 返回一個(gè)DATETIME值。它需要一個(gè)字符串str和一個(gè)格式字符串格式 '%Y-%m-%d %H:%i' , %Y 四位數(shù)字表示的年份(2015,2016 ......),%M 兩位數(shù)字表示月份(01,02,...,12),
%d 兩位數(shù)字表示月中天數(shù)(01,02,...,31),%H 24小時(shí)制,兩位數(shù)形式小時(shí)(00,01,...,23) , %i 兩位數(shù)字形式的分(00,01,...,59), %S 兩位數(shù)字形式的秒(00,01,...,59).
來(lái)個(gè)例子:

這是我的表數(shù)據(jù) , 下面 加通過(guò)日期個(gè)查詢(xún)的條件 , 查詢(xún) 2019-06-05 的數(shù)據(jù)

查詢(xún)結(jié)果顯示我們使用STR_TO_DATE(str, format)函數(shù)可以將數(shù)據(jù)庫(kù)中varchar類(lèi)型的日期數(shù)據(jù)轉(zhuǎn)換成DATETIME類(lèi)型的日期數(shù)據(jù),轉(zhuǎn)換過(guò)程注意format參數(shù)必須要應(yīng)對(duì)str的格式
然后我們?cè)谕ㄟ^(guò)時(shí)間段查詢(xún)一下 , 這里我就需要用到另一個(gè)切割字符串的函數(shù)了
left(str,length) 從左邊截取length
right(str,length)從右邊截取length
我們來(lái)截取一下時(shí)間 ,查詢(xún)大于10:30的時(shí)間

查詢(xún)結(jié)果也是沒(méi)有問(wèn)題的 . 用varchar類(lèi)型麻煩許多 , 建議使用時(shí)間類(lèi)型(((┏(; ̄▽?zhuān)?┛裝完逼就跑
時(shí)間加減
SELECT start_time FROM `t_healthy_lesson` WHERE STR_TO_DATE(start_time,'%Y-%m-%d %H:%i') < date_add('2019-06-03 10:30', interval 1 hour)
AND STR_TO_DATE(start_time,'%Y-%m-%d %H:%i') > date_sub('2019-06-03 10:30', interval 1 hour);day,hour,minute,second, microsecond, week, month,quarter ,year
date_add() 加 , date_sub()減
到此這篇關(guān)于mysql時(shí)間是varchar類(lèi)型進(jìn)行比較的文章就介紹到這了,更多相關(guān)mysql時(shí)間varchar類(lèi)型比較內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySQL動(dòng)態(tài)字符串處理DYNAMIC_STRING
本文主要給大家簡(jiǎn)單講解了mysql如何使用DYNAMIC_STRING來(lái)進(jìn)行動(dòng)態(tài)字符串的保存,非常的實(shí)用,有需要的小伙伴可以參考下2016-10-10
安裝Mysql5.7.10 winx64出現(xiàn)的幾個(gè)問(wèn)題匯總
這篇文章主要介紹了安裝Mysql5.7.10 winx64出現(xiàn)的幾個(gè)問(wèn)題匯總及解決方案,非常不錯(cuò),需要的朋友可以參考下2016-08-08
MySQL如何快速的創(chuàng)建千萬(wàn)級(jí)測(cè)試數(shù)據(jù)
這篇文章主要給大家介紹了關(guān)于MySQL如何快速的創(chuàng)建千萬(wàn)級(jí)測(cè)試數(shù)據(jù)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用MySQL具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05
MySql中的longtext字段的返回問(wèn)題及解決
這篇文章主要介紹了MySql中的longtext字段的返回問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-07-07
MYSQL Left Join優(yōu)化(10秒優(yōu)化到20毫秒內(nèi))
在實(shí)際開(kāi)發(fā)中,相信大多數(shù)人都會(huì)用到j(luò)oin進(jìn)行連表查詢(xún),但是有些人發(fā)現(xiàn),用join好像效率很低,而且驅(qū)動(dòng)表不同,執(zhí)行時(shí)間也不同。那么join到底是如何執(zhí)行的呢,本文就詳細(xì)的介紹一下2021-12-12
MySQL-MMM安裝指南(Multi-Master Replication Manager for MySQL)
這篇文章主要介紹了mysql Multi-Master Replication Manager for MySQL的安裝方法,需要的朋友可以參考下2014-02-02
淺談Mysql使用B+樹(shù)來(lái)實(shí)現(xiàn)索引的原因
這篇文章,主要來(lái)探討一下為什么Mysql使用B+樹(shù)來(lái)實(shí)現(xiàn)索引,這里討論的目標(biāo)是Mysql的InnoDB存儲(chǔ)引擎.可以想象一下,如果你是Mysql的開(kāi)發(fā)人員,你會(huì)怎么去選擇合適的數(shù)據(jù)結(jié)構(gòu)呢,感興趣的小伙伴跟著小編一起來(lái)探討吧2023-05-05
超越MySQL 對(duì)流行數(shù)據(jù)庫(kù)進(jìn)行分支的知識(shí)小結(jié)
盡管MySQL是最受歡迎的程序之一,但是許多開(kāi)發(fā)人員認(rèn)為有必要將其拆分成其他項(xiàng)目,并且每個(gè)分支項(xiàng)目都有自己的專(zhuān)長(zhǎng)。該需求,以及 Oracle 對(duì)核心產(chǎn)品增長(zhǎng)緩慢的擔(dān)憂(yōu),導(dǎo)致出現(xiàn)了許多開(kāi)發(fā)人員感興趣的子項(xiàng)目和分支2012-01-01

