广告
返回顶部
首页 > 资讯 > 数据库 >MySQL中字符串比较大小详解(日期字符串比较问题)
  • 344
分享到

MySQL中字符串比较大小详解(日期字符串比较问题)

2024-04-02 19:04:59 344人浏览 薄情痞子
摘要

前言 数据库中在对于数字与非数字混合的字符串,在进行大小比较的时候,如果两字符串长度相等,那么两字符串就会比较相同位置的字符,比较时若字符是数字,则直接比较,若字符是非数字那么会转换为ascii码进行比较,若在某位置上已

前言

数据库中在对于数字与非数字混合的字符串,在进行大小比较的时候,如果两字符串长度相等,那么两字符串就会比较相同位置的字符,比较时若字符是数字,则直接比较,若字符是非数字那么会转换为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'  

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FdmqBpj3-1641372898325)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20220105163155854.png)]

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

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ls9jHyI4-1641372840373)(C:\Users\ASUS\AppData\Roaming\Typora\typora-user-images\image-20220105164214829.png)]

发现此时**字符串’2019-09-30 00:00:00’**较大。因此之前的sql没有查出日期为2019-09-30的数据

因此。在使用字符串表示时间时,需要使用时间函数进行比较。

sql提供的时间函数有:date(), str_to_date()

另外,在Mysql当中,字符串类型间进行加减乘除运算的时候,会截取字符串以数字开头的那一部分数字进行运算,如果字符串前面没有数字,那么就只能截取的数值为0,那么进行加减的时候结果都是0,进行乘除的时候结果都是NULL。

总结

到此这篇关于mysql中字符串比较大小的文章就介绍到这了,更多相关MySQL字符串比较大小内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

您可能感兴趣的文档:

--结束END--

本文标题: MySQL中字符串比较大小详解(日期字符串比较问题)

本文链接: https://www.lsjlt.com/news/33937.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL中字符串比较大小详解(日期字符串比较问题)
    前言 数据库中在对于数字与非数字混合的字符串,在进行大小比较的时候,如果两字符串长度相等,那么两字符串就会比较相同位置的字符,比较时若字符是数字,则直接比较,若字符是非数字那么会转换为ascii码进行比较,若在某位置上已...
    99+
    2022-08-31
  • mysql中字符串怎么比较大小
    mysql中比较字符串大小的方法通过在字符串后面加0实现比较语法:ORDER BY '123'+0;示例:SELECT '123'+0>127; -- 结果为0,表示falseSELECT '1...
    99+
    2022-10-03
  • 字符串如何比较大小
    字符串比较大小的步骤:1、将要比较的两个字符串分别赋给两个变量;2、比较两个字符串的长度,较短的字符串将被认为是较小的字符串;3、如果长度相同,逐个比较它们的字符;4、从字符串的第一个字符开始,比较两个字符串的ASCII值;5、如果ASCI...
    99+
    2023-08-18
  • php如何不分大小比较字符串
    小编给大家分享一下php如何不分大小比较字符串,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!在php中,可以使用内置函数strncasecmp()来不区分大小写的比较字符串,语法“strncasecmp(str1,str2...
    99+
    2023-06-08
  • 怎么在python中比较字符串的大小
    怎么在python中比较字符串的大小?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。python有哪些常用库python常用的库:1.requesuts;2.sc...
    99+
    2023-06-14
  • Java怎么比较两个字符串的大小
    这篇文章主要介绍“Java怎么比较两个字符串的大小”,在日常操作中,相信很多人在Java怎么比较两个字符串的大小问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java怎么比较两个字符串的大小”的疑惑有所帮助!...
    99+
    2023-07-04
  • MySQL datetime类型与时间、日期格式字符串大小比较的方法
    目录一、前提1、mysql版本信息:2、表字段:二、使用>、<比较1.  日期格式比较:2. 时间格式三、between and1. 日期格式四、总结一、前提 1、MySQL版本信息: MySQL版...
    99+
    2022-11-14
  • C/C++中比较字符串的方法详解
    目录一、strcmp函数适用对象函数介绍用法举例二、compare()函数适用对象用法举例三、==适用对象用法举例四、strstr函数适用对象函数介绍用法举例总结一、strcmp函数...
    99+
    2023-02-05
    C比较字符串 C++比较字符串 C字符串 C++字符串
  • python 字符串比较忽略大小写的方法
    A.正则表达式,使用IGNORECASE标志 >>> import re >>> m = re.search('multi', 'A mUltiCased string', re.IGNOREC...
    99+
    2023-01-31
    大小写 字符串 方法
  • java怎么不区分大小写比较字符串
    java中为了执行忽略大小写的比较,可以调用equalsIgnoreCase( )方法。当比较两个字符串时,它会认为A-Z和a-z是一样的。推荐:java视频教程equalsIgnoreCase()方法用于将字符串与指定的对象比较,不考虑大...
    99+
    2015-12-05
    java 字符串
  • MySQL如何进行区分大小写的字符串比较?
    As we know that MySQL is not case-sensitive while comparing characters but it can be changed i.e. MySQL can perform case...
    99+
    2023-10-22
  • MySQL中varchar的大小写字符比较
    这篇文章主要介绍“MySQL中varchar的大小写字符比较”,在日常操作中,相信很多人在MySQL中varchar的大小写字符比较问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解...
    99+
    2022-10-18
  • Java中两个字符串进行大小比较的方法
    目录一:大小比较:使用 String.compareTo 方法二:字符串是否相等比较下面介绍下java中两个字符串如何比较大小一:大小比较:使用 String.compareTo 方...
    99+
    2022-12-14
    Java比较字符串大小 Java字符串大小比较
  • php字符串如何进行大小写不敏感比较
    这篇文章主要讲解了“php字符串如何进行大小写不敏感比较”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php字符串如何进行大小写不敏感比较”吧!方法:1、用“strcasecmp(strin...
    99+
    2023-06-20
  • 详解C语言内核字符串拷贝与比较
    在上一篇文章《驱动开发:内核字符串转换方法》中简单介绍了内核是如何使用字符串以及字符串之间的转换方法,本章将继续探索字符串的拷贝与比较,与应用层不同内核字符串拷贝与比较也需要使用内核...
    99+
    2022-11-13
  • PHP中国际化的字符串排序和比较对象详解
    目录前言排序比较属性设置排序信息错误信息排序规则强度总结前言 在 PHP 中,国际化的功能非常丰富,包括很多我们可能都不知道的东西其实都非常有用,比如说今天要介绍的这一系列的字符排序...
    99+
    2022-11-12
  • python字符串拼接的7种方法及性能比较详解
    python3.x拼接字符串一般有以下几种方法: 1. 直接通过(+)操作符拼接 s = 'Hello'+' '+'World'+'!' print(s) 输出结果: Hel...
    99+
    2022-11-12
  • 使用Python对mongo数据库中字符串型正负数值比较大小
    数据库中数据展示: 使用python代码实现: # Requires pymongo 3.6.0+ from pymongo import MongoClient client...
    99+
    2023-05-16
    Python字符串 Python正负数值比较 mongo数据
  • MySQL 可以执行什么样的字符串比较(区分大小写或不区分大小写)?
    MySQL在比较字符时无法执行区分大小写的比较。可以通过以下来自表格'Employee'的示例来说明:mysql> Select * from Employee; +----+--------+--------+ | ID ...
    99+
    2023-10-22
  • mysql中datetime字段建立索引并比较大小详解
    目录1、问题背景2、优化过程补充:mysql 时间Datetime 索引不生效问题总结1、问题背景 最近测试库查询一个表的数据,需要用到唯一的一个日期类型字段作为 where 的子查询(查询当天的数据),就正常...
    99+
    2022-12-15
    mysql datetime字段 mysql datetime类型
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作