sql 如何判断日期格式正确 系统只能识别yyyy-mm-dd的格式

我需要查到日期格式不符合yyyy-mm-dd的格式的日期
如果用 select birthday from user where birthday not like '%-%' 一个-的也会被通过
求大神。。。。。。。。。。。。
大神们 我要的不是 某个某个日期 而是 日期中没有-的 非常重要

你格式都写好了“yyyy-mm-dd”
直接就写如数据库啊。不是的话
你数据库里字段是datetime类型的。在打代码时候定义datetime类型
datetime
dt=控件名.value;
string
date=string.format("{0}-{1}-{2}",date.year,date.month,date.day)
以上是以c#代码为例
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2016-09-09
select birthday from user where birthday not like '____-__-__' 试试

_匹配单个字符,前面4个‘_’表示只能匹配四位,
'____-__-__' 表示匹配XXXX-XX-XX类型的追问

写正则么[0-9]{4} 这样的吗? —— 下划线里写什么 我要的是 判断格式 谢谢

追答

那样写就复杂了,like不是正则表达式,要么就用like,要么用regexp_like()

本回答被提问者采纳

sql 如何判断日期格式正确 系统只能识别yyyy-mm-dd的格式
你格式都写好了“yyyy-mm-dd”直接就写如数据库啊。不是的话 你数据库里字段是datetime类型的。在打代码时候定义datetime类型 datetime dt=控件名.value;string date=string.format("{0}-{1}-{2}",date.year,date.month,date.day)以上是以c#代码为例 ...

如何用sql语言只获得数据库当前日期,且格式为"yyyy-mm-dd
1 先用"-"进行分割,看是否是分割成为3段。2 3段是否为两位数字或者前面加上“0”的一位数字(当然不能是空),并且时间是否正确(例如一个月只有31天,而日期是32号)

怎样设置可以让SQL Server 2000默认接受dd\/mm\/yyyy的日期格式?
- 9 或 109 (*) 默认值 + 毫秒 mon dd yyyy hh:mi:ss:mmmAM(或 PM)10 110 美国 mm-dd-yy 11 111 日本 yy\/mm\/dd 12 112 ISO yymmdd - 13 或 113 (*) 欧洲默认值 + 毫秒 dd mon yyyy hh:mm:ss:mmm(24h)14 114 - hh:mi:ss:mmm(24h)- 20 或 120 (*) ODBC 规...

SQL学习笔记——时间和日期的处理
在构建日期格式字符串时,我们可以使用说明符来控制输出格式。例如,`'YYYY-MM-DD'`表示四位年份,两位月份和两位日期。通过组合使用`DATE_FORMAT()`或`FORMAT()`(在一些数据库系统中可用)函数,我们可以自定义日期格式。常用的日期格式字符串包括但不限于:`'%Y-%m-%d'`(四位年份,两位月份和两...

sql日期格式转换
1. 将字符串转换为日期格式:在SQL中,当你从某些表或用户输入接收到日期作为字符串时,可能需要将其转换为日期格式以便进行后续操作。这时,你可以使用`STR_TO_DATE`函数。例如,如果你有一个格式为"YYYY-MM-DD"的日期字符串,你可以这样转换它:sql SELECT STR_TO_DATE AS date_value;在这个例子...

oracle 如何判断字符串是否符合日期格式,类似sqlserver中isdate函数...
强制转换一下,如果触发异常,就不是日期 或者 用Oracle的正则表达式REGEXP_LIKE 具体如何写,你自己试试

SQL SERVER日期格式转换详解
一般存入数据库中的时间格式为yyyy-mm-ddhh:mm:ss 如果要转换为yyyy-mm-dd 短日期格式.可以使用convert函数.下面是sqlserver帮助中关于convert函数的声明:使用 CONVERT:CONVERT (data_type[(length)],expression[,style])参数 expression 是任何有效的 Microsoft® SQL Server™ 表达式。

sql两天的数拼接只有一天
1. 数据类型不匹配:可能是其中一个日期的数据类型不正确,导致拼接时出现了错误。例如,一个日期是以字符串形式存储,而另一个日期是以日期类型存储,这样在拼接时会出现问题。2. 日期格式错误:如果日期的格式不一致,例如一个日期是以"YYYY-MM-DD"格式存储,而另一个日期是以"MM\/DD\/YYYY"格式...

利用SQL语句如何获得两个日期之间相差的天数
用sysdate假设结束日期字段是end_date 添加这个判断条件:where to_char("end_date",'YYYY') = to_char(sysdate,'YYYY') 判断年相同 and to_char("end_date",'MM') = to_char(sysdate,'MM') 判断月相同 and to_char("end_date",'dd') - to_char(sysdate,'dd') = 15 判断日相同 ...

SQL查某个时间段的记录
1、为什么要 to_date 这是把字符型的start_time,end_date 转成 yyyy-MM-dd格式时间 因为你输入的数据有可能格式不一致,具体情况看你自己的表结构和提交表单中的日期格式 要同样格式才能进行比较。2、为什么要 end_date +1呢?这是因为sj的内容有可能是这样得到的 sj=sysdate ,也就是sj 的值是...

相似回答