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

怎么把日期格式化为:2008-02-11:2008-02
如题,
格式化后付给一个字段???
谢谢!

------解决方案--------------------
select to_char(sysdate,'yyyy-mm-dd')||':'||to_char(sysdate,'yyyy-mm') from dual
------解决方案--------------------
SQL> select to_char(sysdate,'yyyy-mm') d2 from dual;

D2
-------
2008-02

我执行没有问题啊
------解决方案--------------------
select to_char(sysdate,'yyyy-mm-dd:yy-mm') from dual;
------解决方案--------------------
我怎么不性 不要into可以吗??我怎么说缺少into语句???
谢谢!

-----------------------
你是不是写在存储过程里面了?
这样的sql直接运行是可以的啊
------解决方案--------------------
把 d2 的数据类型改成 varchar2(7)

declare
 d2 varchar2(7);
------解决方案--------------------
SQL code
declare
 d2 varchar2(7);
 d1 date:=sysdate;
begin
 select to_char(d1, 'yyyy-mm') into d2 from dual;
 dbms_output.put_line(d2);
end;

------解决方案--------------------
先转型,然后在填进去不行吗?
看了上面写的,我都有点晕了!

------解决方案--------------------
select to_char(sysdate,'yyyy-mm-dd:yyyy-mm') from dual;
------解决方案--------------------
select to_char(sysdate,'yyyy-mm-dd-hh24-mi-ss') from dual;
------解决方案--------------------
select to_char(sysdate,'yyyy-mm-dd hh24-mi-ss') from dual;