我可能没说明白 大虾们在看下是这样的,test表只有一个字段a,其中a的数据为2007-10-11,我可以利用sql查询出a的数据(select a from test 这样我能查询出a的数据为:2007-10-11),我现在只想要在查询结果中查询出10就可以,其余的不要
是不是想查出月份啊,如果是,这样的select month(a) from test
Select to_char(Sysdate,'MM') From dual
小弟这么写的 实现出来了 select substr(a,6,2) from test 结果是10(从第六位开始截取,截取2位)
select decode(a,'2007-10-11','10') from test
select decode(a,'2007-10-11','10',a) from test 应该这样
如果a字段是varchar型的: select substr(a,6,2) from test 如果a字段是date型的: select to_char(a,'mm') from test
select substr(a,6,2) from test 这样,应该是!
顶一下 oracle QQ群:54775466 欢迎您的到来 大家一起探讨。
select to_char(to_date(a, 'yyyy-mm-dd'), 'mm') from test;
select to_char(to_date(a,'yyyymmdd'),'mm') from test;
select to_char(a,'DD') from test where to_char(a,'YYYY-MM-DD HH24:MI:SS')='2007-10-11'
select to_char(to_date('2007-10-11','yyyy-mm-dd'),'mm') from dual
select to_char(to_date(a,'yyyymmdd'),'mm') from test;
楼主貌似不是那个意思,哈哈,楼主如果说需要查询出月份的话,可以使用上面N多版本的答案,如: SELECT TO_CHAR(a,'MM') FROM test;楼主是不是像直接通过select a FROM test得到月份的返回值呀,呵呵,看样子有点像哈,要这样的话,只能在一个会话下实现,除非手动去修改初始化参数信息中的:nls_date_format值信息,不过当前会话你可以用:alter session set nls_date_format='MM';来完成修改。模拟获取当前系统时间: SQL> connect / as sysdba; 已连接。 SQL> alter session set nls_date_format='MM';会话已更改。SQL> SELECT sysdate FROM dual;SY -- 04SQL> SELECT sysdate+6*31 FROM dual;SY -- 10不过这部分你不要在PL/SQL相关第三方工具内部去尝试,如PL/SQL它返回日期格式有自己的一套,它是一个终端可以自己对ORACLE查询出来的时间进行相应的显示格式转换(仅仅为显示格式,日期的值是不会变的),就像你用JDBC一样,在PL/SQL中设置时间格式如下:不过个人建议还是在写SQL的时候去控制。
Select to_char(Sysdate,'MM') From dual
应该这样
select substr(a,6,2) from test
如果a字段是date型的:
select to_char(a,'mm') from test
这样,应该是!
oracle QQ群:54775466
欢迎您的到来
大家一起探讨。
select to_char(a,'DD') from test
where to_char(a,'YYYY-MM-DD HH24:MI:SS')='2007-10-11'
SELECT TO_CHAR(a,'MM') FROM test;楼主是不是像直接通过select a FROM test得到月份的返回值呀,呵呵,看样子有点像哈,要这样的话,只能在一个会话下实现,除非手动去修改初始化参数信息中的:nls_date_format值信息,不过当前会话你可以用:alter session set nls_date_format='MM';来完成修改。模拟获取当前系统时间:
SQL> connect / as sysdba;
已连接。
SQL> alter session set nls_date_format='MM';会话已更改。SQL> SELECT sysdate FROM dual;SY
--
04SQL> SELECT sysdate+6*31 FROM dual;SY
--
10不过这部分你不要在PL/SQL相关第三方工具内部去尝试,如PL/SQL它返回日期格式有自己的一套,它是一个终端可以自己对ORACLE查询出来的时间进行相应的显示格式转换(仅仅为显示格式,日期的值是不会变的),就像你用JDBC一样,在PL/SQL中设置时间格式如下:不过个人建议还是在写SQL的时候去控制。