Как мне обрезать дату в PLSQL? - PullRequest
3 голосов
/ 24 декабря 2008

У меня переменная даты как 24-dec-08. Мне нужен только компонент 08.

Как мне сделать это в операторе выбора?

например:.

select db||sysdate 
--(this is the component where I want only 08 from the date) 
from gct;

Ответы [ 2 ]

8 голосов
/ 24 декабря 2008

Самый простой способ - использовать функцию to_char следующим образом:

to_char(sysdate, 'YY')

как задокументировано здесь .

Если вам нужно целочисленное значение, вы можете использовать функцию extract и для дат. Посмотрите здесь для подробного описания синтаксиса extract.

Например:

extract(YEAR FROM DATE '2008-12-24')    

вернется 2008 .

Если вам просто нужно значение двух последних цифр, вы можете применить функцию по модулю MOD:

mod(extract(YEAR FROM DATE '2008-12-24'), 100) 

вернет 8 .

1 голос
/ 24 декабря 2008

Обычный способ сделать это в Oracle:

select db||to_char(sysdate,'YY')
from gct;
...