我的一条SQL语句是 "SELECT ORDER_NO FROM SHUKKAH_F WHERE SYUO_YMD = SYSDATE - 1"
SYUO_YMD 的格式为 2004/03/05
其中的系统日期减一如何写呢?
SYUO_YMD 的格式为 2004/03/05
其中的系统日期减一如何写呢?
解决方案 »
- 请帮忙看看这句SQL, 实现分页查询, 但目前发现排序有问题,请大家帮忙.谢谢
- 求一个很纠结的ORACLE语句
- oralce redo
- 大家帮我看看,这后面的{0},{1},{2},{3}
- server 2003操作系统下安装oracle8.1.7的java问题
- 在存储过程中修改表结构!急用
- linux下安装oracle 8 ,安装界面为乱码
- 解决问题的就送分!!!一个Report Builder的问题!!!急急急急!!!
- ORACLE ERP 11i系统安装和技术支持。
- 请教:oracle分析函数lead()over()运算后的结果如何插入到表中新的字段?
- 【集合table】怎样删除集合里面的一条记录,使得count属性相应改变
- 怎么在sql语句里判断一个字符串是不是date型的
系统日期格式减一为/sysdate-1,不要有空格,如果是字符型的,
可以to_char(sysdate-1,'YYYYMMDD'),后面的格式你可以参照详细说明进行转换。
SELECT ORDER_NO FROM SHUKKAH_F WHERE SYUO_YMD = to_char(SYSDATE,'yyyy/mm/dd')-1;2、如SYUO_YMD 为日期字段类型,则:
SELECT ORDER_NO FROM SHUKKAH_F
WHERE to_char(SYUO_YMD,'yyyy/mm/dd') = to_char(SYSDATE,'yyyy/mm/dd')-1;因为sysdate格式为:'yyyy/mm/dd hh24:mi:ss'
select to_char(SYSDATE,'yyyy/mm/dd')-1 from dual
*
ERROR 位于第 1 行:
ORA-01722: 无效数字to_char后是字符型,怎么能做-1操作呢?除非将/去掉。既然syud_ymd是日期型,就用贴主贴中的哪个语句即可。
sysdate - 1是成立的,不存在多空格问题。
贴主发现了什么错误呢????
我是嵌入到java中的,在java也没有问题.
SQL> select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') time from dual;TIME
-------------------
2004-04-20 13:50:03//小时减1;SQL> select to_char(sysdate,'yyyy-mm-dd')||' '||(to_char(sysdate,'hh24')-1)||'时' time from dual;
TIME
-----------------------------------------------------
2004-04-20 12时
select sysdate - 1 from dual
月减一
select add_months(sysdate,-1) from dua
年减一
select add_months(sysdate,-12) from dua