ORA-00904: «ФОРМАТ»: неверный идентификатор - PullRequest
1 голос
/ 26 апреля 2010

Я пытаюсь отформатировать дату:

FORMAT(table.TCKT.TCKT_ISS_DATE, 'YYYY') AS TICKETYEAR

, но получаю следующую ошибку:

ORA-00904: "FORMAT": неверный идентификатор

Прямо сейчас дата показывает полную метку времени.Любые предложения о том, как решить эту проблему, или любой другой способ отформатировать дату, чтобы просто показать четырехзначный год?

Ответы [ 3 ]

4 голосов
/ 26 апреля 2010

Используйте эту функцию:

TO_CHAR(table.TCKT.TCKT_ISS_DATE, 'YYYY') AS TICKETYEAR 
2 голосов
/ 26 апреля 2010

Вы хотите использовать TO_CHAR вместо FORMAT здесь, вот так:

TO_CHAR(table.TCKT.TCKT_ISS_DATE, 'YYYY') AS TICKETYEAR

Oracle использует TO_CHAR для приведения строк, , здесь вы можете найти дополнительные опции формата .

0 голосов
/ 19 марта 2015

Существует также опция использования EXTRACT(), которая является стандартом ANSI и переносима:

EXTRACT(YEAR FROM table.TCKT.TCKT_ISS_DATE) AS ticketyear
...