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

MySQL中字符串比較大小詳解(日期字符串比較問題)

 更新時(shí)間:2022年08月31日 11:12:37   作者:yan_pan  
varchar類型的數(shù)據(jù)是不能直接比較大小的,下面這篇文章主要給大家介紹了關(guān)于MySQL中字符串比較大小的相關(guān)資料,詳細(xì)介紹了日期字符串比較問題,需要的朋友可以參考下

前言

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

如上所述,當(dāng)字符串用于比較時(shí)間格式數(shù)據(jù)進(jìn)行時(shí)間維度的比較時(shí)會(huì)出現(xiàn)問題。如以下sql進(jìn)行查詢時(shí)

 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'  

[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-FdmqBpj3-1641372898325)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20220105163155854.png)]

? 圖1-1

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

當(dāng)使用日期函數(shù)把字符串轉(zhuǎn)化為日期時(shí)

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' ) 

? 圖1-2

如圖1-2所示,查出了符合條件的數(shù)據(jù)

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

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

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

[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳(img-Ls9jHyI4-1641372840373)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20220105164214829.png)]

發(fā)現(xiàn)此時(shí)**字符串’2019-09-30 00:00:00’**較大。因此之前的sql沒有查出日期為2019-09-30的數(shù)據(jù)

因此。在使用字符串表示時(shí)間時(shí),需要使用時(shí)間函數(shù)進(jìn)行比較。

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

另外,在mysql當(dāng)中,字符串類型間進(jìn)行加減乘除運(yùn)算的時(shí)候,會(huì)截取字符串以數(shù)字開頭的那一部分?jǐn)?shù)字進(jìn)行運(yùn)算,如果字符串前面沒有數(shù)字,那么就只能截取的數(shù)值為0,那么進(jìn)行加減的時(shí)候結(jié)果都是0,進(jìn)行乘除的時(shí)候結(jié)果都是NULL。

總結(jié)

到此這篇關(guān)于MySQL中字符串比較大小的文章就介紹到這了,更多相關(guān)MySQL字符串比較大小內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 在Win下mysql備份恢復(fù)命令

    在Win下mysql備份恢復(fù)命令

    假設(shè)mysql安裝在c:盤,mysql數(shù)據(jù)庫的用戶名是root,密碼是123456,數(shù)據(jù)庫名是database_name
    2010-02-02
  • MySQL Memory 存儲(chǔ)引擎淺析

    MySQL Memory 存儲(chǔ)引擎淺析

    需求源自項(xiàng)目中的MemCache需求,開始想用MemCached(官方站點(diǎn):http://memcached.org/ ),但這個(gè)在Linux下面應(yīng)用廣泛的開源軟件無官方支持的Windows版本
    2011-12-12
  • 簡單了解MySQL數(shù)據(jù)庫優(yōu)化技巧

    簡單了解MySQL數(shù)據(jù)庫優(yōu)化技巧

    這篇文章主要介紹了簡單了解MySQL數(shù)據(jù)庫優(yōu)化技巧,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • memcached的學(xué)習(xí)過程

    memcached的學(xué)習(xí)過程

    本篇文章是對(duì)筆者學(xué)習(xí)memcached的經(jīng)歷進(jìn)行了介紹,需要的朋友參考下
    2013-06-06
  • Mysql8.0使用窗口函數(shù)解決排序問題

    Mysql8.0使用窗口函數(shù)解決排序問題

    窗口的概念非常重要,它可以理解為記錄集合,窗口函數(shù)也就是在滿足某種條件的記錄集合上執(zhí)行的特殊函數(shù)。這篇文章主要介紹了Mysql8.0使用窗口函數(shù)解決排序問題,需要的朋友可以參考下
    2020-01-01
  • Mysql索引類型與基本用法實(shí)例分析

    Mysql索引類型與基本用法實(shí)例分析

    這篇文章主要介紹了Mysql索引類型與基本用法,結(jié)合實(shí)例形式分析了Mysql索引類型中普通索引、唯一索引、主鍵索引、組合索引、全文索引基本概念、原理與使用方法,需要的朋友可以參考下
    2020-06-06
  • mysql如何創(chuàng)建數(shù)據(jù)庫并指定字符集

    mysql如何創(chuàng)建數(shù)據(jù)庫并指定字符集

    這篇文章主要介紹了mysql如何創(chuàng)建數(shù)據(jù)庫并指定字符集問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Mysql中的sql優(yōu)化實(shí)踐詳解

    Mysql中的sql優(yōu)化實(shí)踐詳解

    這篇文章主要介紹了Mysql中的sql優(yōu)化實(shí)踐詳解,SQL優(yōu)化是指通過改進(jìn)SQL語句的編寫和查詢計(jì)劃的設(shè)計(jì)來提高數(shù)據(jù)庫查詢性能的過程,在優(yōu)化SQL時(shí),可以采取一些措施來提升查詢性能,需要的朋友可以參考下
    2023-09-09
  • SQL語句詳解 MySQL update的正確用法

    SQL語句詳解 MySQL update的正確用法

    以下的文章主要介紹的是MySQL update 語句的實(shí)際用法,我們首先是以單表的UPDATE語句來引出實(shí)現(xiàn)MySQL update 語句的實(shí)際方案,以下就是文章的詳細(xì)內(nèi)容描述,望你看完之后會(huì)有收獲
    2012-01-01
  • MySQL正則表達(dá)式入門教程

    MySQL正則表達(dá)式入門教程

    這篇文章主要介紹了MySQL正則表達(dá)式,一個(gè)簡單的MySQL正則表達(dá)式入門教程,需要的朋友可以參考下
    2014-04-04

最新評(píng)論