我的编程空间,编程开发者的网络收藏夹
学习永远不晚

mysql中varchar类型的日期进行比较、排序等操作的实现

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

mysql中varchar类型的日期进行比较、排序等操作的实现

在mysql使用过程中,日期一般都是以datetime、timestamp等格式进行存储的,但有时会因为特殊的需求或历史原因,日期的存储格式是varchar,那么我们该如何处理这个varchar格式的日期数据呢?

使用函数:STR_TO_DATE(str, format)

STR_TO_DATE(str, format)函数是DATE_FORMAT()函数的反函数。它需要一个字符串str和一个格式字符串格式。STR_TO_DATE()返回一个DATETIME值,如果格式字符串包含日期和时间部分,或如果字符串只包含日期或时间的部分返回日期或时间值。

下面举个案例进行说明。

比如我现在有一张会员表,表的结构如下所示:

我在表中造了如下几条数据:

现在,如果我需要从中挑选出2018年8月份注册的所有会员,并按注册时间进行排序,那么要怎么做呢?这里给出一个参考:


SELECT id,nickname,createtime 
FROM member
WHERE str_to_date(createtime, '%Y-%m-%d') BETWEEN str_to_date('2018-08-01', '%Y-%m-%d') AND str_to_date('2018-08-31', '%Y-%m-%d')
ORDER BY str_to_date(createtime, '%Y-%m-%d')

执行结果如下:

总结:STR_TO_DATE(str, format)函数可以将数据库中varchar类型的日期数据转换成DATETIME类型的日期数据,转换过程注意format参数必须要应对str的格式,之后我们就可以进行比较、排序等操作啦!

到此这篇关于mysql中varchar类型的日期进行比较、排序等操作的实现的文章就介绍到这了,更多相关mysql varchar类型比较排序内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

mysql中varchar类型的日期进行比较、排序等操作的实现

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

下载Word文档

猜你喜欢

mysql中varchar类型如何实现日期进行比较、排序等操作

这篇文章主要介绍mysql中varchar类型如何实现日期进行比较、排序等操作,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在mysql使用过程中,日期一般都是以datetime、timestamp等格式进行存储的,
2023-06-25

编程热搜

目录