Oracle эквивалентна функции SQL «конвертировать» - PullRequest
4 голосов
/ 15 ноября 2010

Например, в SQL у меня есть:

CONVERT(VARCHAR(10), mydate, 120)
CONVERT(DECIMAL(18,2), cost)

Есть ли эквивалент в Oracle?

Ответы [ 2 ]

6 голосов
/ 15 ноября 2010

Это в TSQL:

CONVERT(VARCHAR(10), mydate, 120)

... возвращает строку, поэтому вам, вероятно, следует использовать TO_CHAR :

TO_CHAR(mydate, 'yyyy-mm-dd hh24:mi:ss')

Вы бы использовали TO_DATE , если значение уже не является типом данных Oracle DATE, с использованием той же маски формата:

TO_DATE(mydate, 'yyyy-mm-dd hh24:mi:ss')

... или я бы в любом случае предпочел бы явное преобразование типов данных при работе с временнымитипы данных.


Это в TSQL:

CONVERT(DECIMAL(18,2),cost)

... необходимо использовать функцию CAST :

CAST(cost AS DECIMAL(18,2))
3 голосов
/ 15 ноября 2010

Вы хотите взглянуть на встроенные функции для PLSQL .

to_date('15/11/2010''dd/MM/yyyy')

и

to_number('1234.567','999.99')

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...