Я создал несколько операторов CASE, в которых не работают, которые имеют все разные ошибки. Я провел последние несколько часов, пытаясь понять их, и просто не могу их получить. Если бы кто-нибудь мог объяснить, что я делаю неправильно в каждом, было бы здорово.Операции CASE [Oracle/SQL]
SELECT FIRST_NAME, LAST_NAME, to_number(MANAGER_ID, '9999'), COMMISSION_PCT,
CASE
WHEN '"MANAGER_ID" > 0' THEN MANAGER_ID
ELSE '9999'
END AS"Review"
FROM EMPLOYEES
WHERE DEPARTMENT_ID BETWEEN 80 AND 90
С помощью этого кода, я должен быть создать новый столбец «Обзор» со следующей информацией введенный: Если у них есть удостоверение личность менеджера, то это будет показан Если они не имеют id менеджера, тогда будет отображаться сообщение Commission_pct Если у них нет комиссии, тогда будет отображаться «9999»
[Написав это, я заметил, что у меня никогда не было никаких команд относительно Commission_Pct, но я предполагаю, что даже не исправил бы эту проблему.]
Моя следующая проблема:
Select NAME, START_DATE, to_char(END_DATE, 'DD/MON/YYYY'),
CASE END_DATE
WHEN '30/Sep/2004' THEN 'End in 2 weeks'
ELSE SYSDATE
END AS "PROMOTIONS"
FROM f_promotional_menus
С помощью этого кода это немного странно, но требует от него этого требования. Если есть дата окончания, временно замените ее на «конец через две недели». Если дата окончания отсутствует, замените ее на сегодняшнюю дату.
Мой последний вопрос
SELECT LAST_NAME, to_number(DEPARTMENT_ID, '99999), to_number(SALARY, '9999999.99'),
CASE DEPARTMENT_ID
WHEN '10' THEN '1.25*"SALARY"'
WHEN '90' THEN '1.5*"SALARY"'
WHEN '130' THEN '1.75*"SALARY"'
ELSE SALARY
END AS "NEW_SALARY"
FROM EMPLOYEES;
Опять же, новый столбец с требованиями зача- Если отдел идентификатор 10, то 1,25 * зарплата Если отдел идентификатор 90 затем 1,5 * зарплата Если отдел id равно 130, то 1,75 * зарплата В противном случае отобразите старую зарплату.
Если у кого-то даже есть самые смутные идеи о том, где я поступил не так, и у вас есть предложение относительно его исправления, это было бы весьма признательно. Спасибо!
Способ работы с переполнением стека: вы задаете один вопрос одновременно. Пожалуйста, вы можете разделить три вопроса на три разных вопроса о переполнении стека –