数据库时间字段定义的是varchar怎么比较大小?
首先我们可以先使用sql语句
select STRCMP('2022-10-26 05:50:44','2023-02-15 00:00:00')
来判断大小,经过结果的取值可以看到字符串的大小比较
字符串比较的时候,从字符串左边开始,一次比较每个字符,直接出现差异、或者其中一个串结束为止。
比如ABC与ACDE比较,第一个字符相同,继续比较第二个字符,由于第二个字符是后面一个串大,所以不再继续比较,结果就是后面个串大。
再如ABC与ABC123比较,比较三个字符后第一个串结束,所以就是后面一个串大。
所以,长度不能直接决定大小,字符串的大小是由左边开始最前面的字符决定的。
compareTo()方法可以实现
单个字符这样比较,若字符串比较长呢??
若a="a",b="b";则输出-1; 前面ASCII码减后面
若a="a",b="a"则输出0;
若a="b",b="a"则输出1;
若a=“ab”,b=“b”,则输出-1;
若a=“abcdef”,b="b"则输出-1;
也就是说,如果两个字符串首字母不同,则该方法返回首字母的asc码的差值;
如果首字母相同呢??
若a=“ab”,b=“a”,输出1; 参与比较的一样,那就返回前面长度减后面
若a=“abcdef”,b="a"输出5;
若a=“abcdef”,b="abc"输出3;
若a=“abcdef”,b="ace"输出-1;
即参与比较的两个字符串如果首字符相同,则比较下一个字符,直到有不同的为止,返回该不同的字符的asc码差值,如果两个字符串不一样长,可以参与比较的字符又完全一样,则返回两个字符串的长度差值
如果我们使用的字符串字段来只取年月日的某值的话我们可以使用字符串截取来判断
如SUBSTRING(BIRTHDAY,1,4)取生日的某一年
时间类型的还是用时间创建,varchar一时爽,出了问题就是大问题,不规范!
查考页面:字符串大小比较的规则?
数据库时间字段定义的是varchar怎么比较大小?相关推荐
- MYSQL数据库时间字段INT,TIMESTAMP,DATETIME性能效率比较
from: http://www.piaoyi.org/database/MYSQL-INT-TIMESTAMP-DATETIME.html Author:飘易 Source:飘易 Categorie ...
- MySQL时间字段效率_MYSQL数据库时间字段INT,TIMESTAMP,DATETIME性能效率比较
正 文: 在数据库设计的时候,我们经常会需要设计时间字段,在MYSQL中,时间字段可以使用int.timestamp.datetime三种类型来存储,那么这三种类型哪一种用来存储时间性能比较高,效率好 ...
- 数据库时间字段条件操作善用TO_DAYS函数等
to_days函数:返回从0000年(公元1年)至当前日期的总天数.注意如下举例中的几个字段名一般为YMD或Y-M-D格式,非时间戳. 1.利用to_days函数查询今天的数据: select * f ...
- 数据库时间字段排序问题
项目里面有个时间字段,设计的时候设为了string类型的了. 在以这个字段进行排序时发现date是对的,但是hour的顺序有问题. 后来把这个字段设置为了Datetime,问题就解决了. 转载于:ht ...
- mysql数据库时间字段看不懂_mysql数据库时间字段看不懂
{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...
- mysql 数据库时间类型 datetime 数据在页面上显示一串数字, 用函数date_format( )转换格式 ;
mysql 数据库时间类型 datetime 转换格式 数据库时间字段datetime可以使用date_format( )函数进行时间的转换. 数据库时间字段类型: 数据库查询结果: 没转换前页面显示 ...
- 11-【数据库】定义表结构的时间字段的两种方式
1.方式一:定义时间字段默认值为NULL 若定义表结构的时间字段(eg:created_on.updated_on)是NULL.那在代码中连接数据库时要增加如下配置(红框中的配置): 来使得: 通 ...
- 时间字段 oracle 经验 设计,数据库设计与优化
一.设计技巧 1. 原始单据与实体之间的关系 可以是一对一.一对多.多对多的关系.在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体.在特殊情况下,它们可能是一对多或多对一的关系,即 ...
- 【原创】数据库中时间字段的值读取到DataSet中后,毫秒部分丢失。
数据库中时间字段的值读取到DataSet中后,毫秒部分丢失. 在网上查了些解决方案,说读取时间时,先转化为DateTime类型,然后在ToString("yyyy-MM-dd HH:mm:s ...
最新文章
- 阿里云https认证
- 基于crc32实现的内存的代码校验
- Java实现算法导论中最长公共子序列(LCS)动态规划法
- ReentrantLock实现原理深入探究
- python趣味编程100例-达人迷 Python趣味编程10例
- Vue编写添加用户的表单 ~ 不要错过哦
- input输入框提示从数据库查出来的一堆数据
- 螺旋传动设计系统lisp_石狮螺旋输送机质量可靠
- 设计模式的征途—7.适配器(Adapter)模式
- dex2jar 和 jd-gui
- postgresql 身份证、手机号、营业执照验证脚本
- java上传文件服务器_java 实现文件上传到另一台服务器
- mysql编写倒计时_最简单的实现倒计时
- 懒惰删除JAVA,Redis的新特性懒惰删除Lazy Free详解
- MaxCompute 助力衣二三构建智能化运营工具
- 基于Java+Dubbo设计的智能公交查询系统
- 获取html中光标位置
- Figma又崩了,但我们P事没有
- 网络安全课程设计_网络规划
- ABI and ISA