Вопрос

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

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

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

ORA-00904: «Формат»: неверный идентификатор

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

Это было полезно?

Решение

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

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

Другие советы

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

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

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

Есть также возможность использования EXTRACT() который является стандартом ANSI и портативным:

EXTRACT(YEAR FROM table.TCKT.TCKT_ISS_DATE) AS ticketyear
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top