日期:2014-05-17  浏览次数:20628 次

一个SQL语句的条件
如何写一个SQL语句,查询日期为今天(系统时间)的记录。。数据库里的时间是字符形式存储的。

select * from tablename where date like tochar(sysdate,'yymmdd')||'%'

我这么写,可是查不出来。。请教各位前辈

------解决方案--------------------
SQL code
--1.假设你的数据库中,日期的存储为8位的年月日:
20110101
20111112
...


--sql
select * from tableName where date = to_char(sysdate, 'yyyyMMdd')

--2.假设你的数据库中,日期存储为带有时分秒的timestamp型,而你想抽出年月日相同的日期,不计较时分秒

20110101142330
...

--sql
select * from tableNmae where substr(date,0,8) = to_char(sysdate, 'yyyyMMdd')

------解决方案--------------------
SQL code

select * from tablename where instr(to_char(sysdate,'yymmdd'),date)>0