mysql如何判断某些日期不合法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql如何判断某些日期不合法相关的知识,希望对你有一定的参考价值。

在系统集成或从其它表里面转存时间字段,用字符串存储时间字段时,可能有一些不合法数据导致系统运行报错。而由于数据量较多无法用肉眼拍错,这时候就需要用sql语句筛选出不合法的数据。

如图下图中有一字段st_to_date是varchar类型的字段我们在里面存一些合法不合法的数据。

mysql如何判断某些日期不合法_数据

请从表里面筛选出不是这种1986-06-26数据类型的数据,不能转换成时间类型的也筛出来。也就是主键为10001和10002的数据,假设数据很多有几万条。

select emp_no,str_to_date(st_date,%Y-%m-%d) as date from dept_emp

我们可以用字符串转日期函数看一下转换结果。当不能转换时结果为空因此就可以很轻易的得出筛选条件

mysql如何判断某些日期不合法_字段_02

执行完在条sql就能得到想要的数据

select emp_no,str_to_date(st_date,%Y-%m-%d) as cc from dept_emp where str_to_date(st_date,%Y-%m-%d) is null

mysql如何判断某些日期不合法_字段_03

我们可以用其它类型的时间字段测试一下比如说用20220208在种时间格式实验一下。

select emp_no,str_to_date(st_date,%Y%m%d) as cc from dept_emp where str_to_date(st_date,%Y%m%d) is null

mysql如何判断某些日期不合法_字段_04

OK效果很好完美收工。记得要注意调一下str_to_date(st_date,%Y-%m-%d)函数里的时间格式。

求点赞                 2023-01-12 9:09分编写完成。

以上是关于mysql如何判断某些日期不合法的主要内容,如果未能解决你的问题,请参考以下文章

laydate.render报错:日期格式不合法

java判断日期是不是合法

JAVA 判断一个字符串是否一个合法的日期格式

如何判断子网掩码是不是合法

JAVA 怎么判断一个字符串是否一个合法的日期格式??

SQL里面,用字符类型存储时间,可以比较时间大小吗?