我有一个值表:
-----------------------
ID Date
-----------------------
1 2015-06-26
2 1974-05-29 00:00:00
3 2012-01-30 00:00:00
4 2011-12-03 00:00:00
5 1994-06-12
6 2016-04-01
-----------------------
我需要获取格式为1974-05-29 00:00:00
的否那些ID。
即我的输出应为:
-----------------------
ID Date
-----------------------
1 2015-06-26
5 1994-06-12
6 2016-04-01
-----------------------
请帮助。
更新: 日期列的数据类型:VARCHAR2(128 CHAR)
答案 0 :(得分:1)
尝试一下
Select * from my_table where instr(date, '00:00:00') <= 0
or
Select * from my_table where length(date) = 10
注意:我不确定为什么您要以字符串格式维护日期。最好尝试转换为日期格式(如果可能)
答案 1 :(得分:1)
您只需要检查格式,就可以使用:
select *
from yourTable
where not regexp_like("Date", '\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}')
请注意,这不会检查内容,因此'2011-12-03 99:99:99'
之类的字符串将被视为正确。