У меня проблема с использованием функции объединения в Oracle.Я нахожусь в процессе переключения баз данных на Oracle, и у меня возникла проблема.
Это то, что я хотел бы запустить: код из исходного запроса (IBM)
,COALESCE(period_dt, CAST('01-01-1900' AS DATE)) AS PERIOD_DT
где дляв этом столбце он возвращает period_dt в столбце, но если ничего нет, ноль, 0 и т. д., возвращаемое значение в формате даты будет следующим: 01/01/1900
Я пробовал следующеепараметры:
COALESCE(TO_DATE(period_dt, 'mm/dd/yyyy'), TO_DATE('01/01/1900', 'mm/dd/yyyy')) period_dt
,case when period_dt = 0 then to_date('01-01-1900', 'mm/dd/yyyy')
when period_dt = '' then to_date('01-01-1900', 'mm/dd/yyyy')
when period_dt = NULL then to_date('01-01-1900', 'mm/dd/yyyy')
else to_date(period_dt,'mm/dd/yyyy')
END period_dt
При использовании определенных комбинаций я получил ошибки, которые варьируются от «недопустимого месяца» до «несовместимых типов данных: ожидаемая ДАТА получила НОМЕР», и поскольку я не могу запустить это в операторе выбора,я не совсем уверен, как бы это выразить в заявлении groupby.любая помощь, которую вы можете оказать, была бы полезна.