Я использую оператор SQL в Power BI в системе на базе Oracle, чтобы получить некоторые данные, когда день недели равен понедельнику.В идеале я пытаюсь сделать так, чтобы он работал в любом месте.Я пытаюсь преобразовать "C_endtime" в день недели и сравнить его с sysdate.В основном, если это понедельник, то я хочу, чтобы все данные из этой таблицы вернулись в пятницу, а через день - просто данные за предыдущий день.
Другими словами, я в конечном итоге снимаю:
...
where
if
sysdate = 1 (Monday)
then
pull data back 3 days (sysdate -3)
else
one day (sysdate -1)
Вот моя попытка:
SELECT
Example Fields
FROM
Example Table
WHERE
TO_CHAR(c_endtime, 'D', 'NLS_DATE_LANGUAGE=ENGLISH') >
CASE TO_CHAR(sysdate, 'D', 'NLS_DATE_LANGUAGE=ENGLISH')
WHEN '1' then sysdate - 3
ELSE
sysdate - 1
END
AND
c_workcentrename = ####
Я получаю ошибку: "ORA-01840: значение ввода недостаточно для формата даты. "