我正在尝试在oracle数据库中执行sql查询(查询应该返回月份号),当我使用它有效的日期值时:
select substr(to_char('8/19/2015 9:40:32 AM'), 1, instr(to_char('8/19/2015 9:40:32 AM'), '/', 1, 1)-1)
from table_name t1
但是当我使用列名而不是日期时,它不会返回结果:
select substr(to_char(t1.creation_date), 1, instr(to_char(t1.creation_date), '/', 1, 1)-1)
from table_name t1
即使我逃脱了它:
select substr(to_char(t1.creation_date), 1, instr(to_char(t1.creation_date), q'[/]', 1, 1)-1)
from table_name t1
希望你能帮助我!
提前致谢
答案 0 :(得分:1)
尝试以下:
select to_char(to_date('15-11-2010', 'DD-MM-YYYY'), 'MM') from dual
将返回低于输出:
11
对于列名:
select to_char(t1.creation_date, 'MM') from table_name t1
答案 1 :(得分:0)
使用此
select to_number(to_char(t1.creation_date,'mm')) from table_name t1