Oracle DB
-
How can the request be classified on a specific basis, such as ID 10, 20, 50. I want to fight in order of 10, 50, 20. I got on the Internet, but I couldn't find the answer. ♪ ♪
SELECT a.department_id, b.department_name, a.job_id FROM HR.EMPLOYEES a LEFT JOIN HR.DEPARTMENTS b ON a.department_id = b.department_id WHERE a.department_id = 10
UNION ALL
SELECT
a.department_id,
b.department_name,
a.job_id
FROM HR.EMPLOYEES a
LEFT JOIN HR.DEPARTMENTS b
ON a.department_id = b.department_id
WHERE a.department_id = 50UNION ALL
SELECT
a.department_id,
b.department_name,
a.job_id
FROM HR.EMPLOYEES a
LEFT JOIN HR.DEPARTMENTS b
ON a.department_id = b.department_id
WHERE a.department_id = 20;
-
For example, it is possible to do so:
SELECT a.department_id, b.department_name, a.job_id FROM HR.EMPLOYEES a LEFT JOIN HR.DEPARTMENTS b ON a.department_id = b.department_id WHERE a.department_id IN(10, 50, 20) ORDER BY decode(department_id, 10, 1, 50, 2, 20, 3)
In fact, for order, we'll replace department_id for the grading number.