如果这个表中填写时间的字段是varchar型的,那么比较的时候
创新互联专注于双湖企业网站建设,自适应网站建设,商城开发。双湖网站建设公司,为双湖等地区提供建站服务。全流程定制网站制作,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务
select * from table a WHERE a.date=to_char(SYSDATE,'yyyymmdd');
如果这个表中填写时间的字段是date型的,那么比较的时候
select * from table a WHERE a.datesysdate-1 and a.date=sysdate;
这里有一个简单判断日期的方法。
其实日期看来很简单,但各国表示各不相同.
1/13/2005
2005.10.25
23-05-2005
等都是日期
这还不包括类似20051225等方式
/*
最初由 jackywood 发布
个人写的一个判断是否是正确日期字符串的函数, 请大家点评
函数参数 str : 需要转换为日期的字符串, fmt : 日期格式, nls : 日期字符串的语言
返回值: 类型为date, 如果字符串不符合转换格式的要求或是非法的日期字符串, 返回值为null, 反之, 返回转换后的date值
*/
CREATE OR REPLACE FUNCTION isdate(str varchar2, fmt varchar2 default null, nls varchar2 default null)
RETURN date
IS
v_date date;
v_fmt varchar2(100) default fmt;
v_nls varchar2(100) default nls;
BEGIN
IF fmt IS NULL THEN
SELECT value
INTO v_fmt
FROM v$nls_parameters
WHERE parameter='NLS_DATE_FORMAT';
END IF;
IF nls IS NULL THEN
SELECT 'NLS_DATE_LANGUAGE='''||value||''''
INTO v_nls
FROM v$nls_parameters
WHERE parameter='NLS_DATE_LANGUAGE';
END IF;
v_date := to_date(str, v_fmt, v_nls);
RETURN v_date;
EXCEPTION
WHEN OTHERS THEN
/*如果你希望看到报错, 就把下面的注释行打开*/
--raise;
RETURN NULL;
END;
/
写法有很多种,例如下面的:\x0d\x0a方法一:select * from dual where time between to_date('2012-06-18 00:00:00','yyyy-mm-dd hh24:mi:ss') and to_date('2012-06-18 23:59:59','yyyy-mm-dd hh24:mi:ss');\x0d\x0a方法二:select * from dual where to_char(time,'yyyy-mm-dd')='2012-06-18';\x0d\x0a方法三:select * from dual where trunc(time)=to_date('2012-06-18','yyyy-mm-dd');\x0d\x0a当然楼主也可以按上面的先转换下日期的显示格式再查询撒,都可以的,呵呵!!!
EXTRACT功能。oracle判断日期是否在一个月内可以直接使用EXTRACT功能代码进行查看。Oracle公司(甲骨文)是全球最大的信息管理软件及服务供应商,成立于1977年,总部位于美国加州Redwoodshore,面向全球开放oracle认证。