中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL中字符串比較大小問題怎么解決

發布時間:2022-08-31 13:53:48 來源:億速云 閱讀:250 作者:iii 欄目:開發技術

這篇文章主要介紹“MySQL中字符串比較大小問題怎么解決”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“MySQL中字符串比較大小問題怎么解決”文章能幫助大家解決問題。

前言

數據庫中在對于數字與非數字混合的字符串,在進行大小比較的時候,如果兩字符串長度相等,那么兩字符串就會比較相同位置的字符,比較時若字符是數字,則直接比較,若字符是非數字那么會轉換為ascii碼進行比較,若在某位置上已經有大小之分,那么就不會再進行比較。

如上所述,當字符串用于比較時間格式數據進行時間維度的比較時會出現問題。如以下sql進行查詢時

 select *  FROM  work_day_content as wdc WHERE wdc.work_day >= '2019-09-30 00:00:00' AND   wdc.work_day<= '2019-10-06 00:00:00'

MySQL中字符串比較大小問題怎么解決

圖1-1

如圖1-1所示,沒有查詢出任何條件

當使用日期函數把字符串轉化為日期時

select * FROM work_day_content as wdc where date(wdc.work_day) >= date('2019-09-30 00:00:00' ) AND date(wdc.work_day)<= date('2019-09-30 00:00:00' )

MySQL中字符串比較大小問題怎么解決

圖1-2

如圖1-2所示,查出了符合條件的數據

分析為何第一個sql語句沒有查詢出內容。由于該字段使用的是字符串形式存儲,因此此時比較大小采用的是字符串方式比較大小。

字符串方式比較大小是從左往右進行匹配。對于長度不同的字符串進行匹配時。較短字符串比較完后還沒有大小之分。則較長的字符串較大。如下面sql所示

select '2019-09-30 ' < '2019-09-30 00:00:00'

MySQL中字符串比較大小問題怎么解決

發現此時**字符串&rsquo;2019-09-30 00:00:00&rsquo;**較大。因此之前的sql沒有查出日期為2019-09-30的數據

因此。在使用字符串表示時間時,需要使用時間函數進行比較。

sql提供的時間函數有:date(), str_to_date()

另外,在mysql當中,字符串類型間進行加減乘除運算的時候,會截取字符串以數字開頭的那一部分數字進行運算,如果字符串前面沒有數字,那么就只能截取的數值為0,那么進行加減的時候結果都是0,進行乘除的時候結果都是NULL。

關于“MySQL中字符串比較大小問題怎么解決”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

大石桥市| 永定县| 临高县| 安国市| 囊谦县| 宁陵县| 三都| 旌德县| 东海县| 丰原市| 青田县| 眉山市| 宽甸| 九江市| 万山特区| 徐水县| 浦江县| 义马市| 常宁市| 汨罗市| 武穴市| 上栗县| 乌审旗| 平潭县| 东辽县| 若羌县| 丹寨县| 黎川县| 宽城| 巫山县| 兴安盟| 博乐市| 偃师市| 满洲里市| 昌黎县| 嘉黎县| 嘉兴市| 攀枝花市| 彰武县| 南澳县| 临洮县|