add batch remove batch split batch comment selection show hidden batches hide batch highlight batch
db<>fiddle
donate feedback about
By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
CREATE TABLE staff (sname, job) AS
SELECT 'JONES', 'MANAGER' FROM DUAL UNION ALL
SELECT 'HAYAT', 'MANAGER' FROM DUAL UNION ALL
SELECT 'CLARK', 'MANAGER' FROM DUAL UNION ALL
SELECT 'ALICE', 'CEO' FROM DUAL UNION ALL
SELECT 'BERYL', 'CTO' FROM DUAL
5 rows affected
SELECT SNAME,
JOB
FROM STAFF
WHERE JOB IN (SELECT JOB FROM STAFF WHERE SNAME = 'JONES')
AND sname != 'JONES';
SNAME JOB
HAYAT MANAGER
CLARK MANAGER
SELECT sname,
job
FROM (
SELECT sname,
job,
COUNT(CASE sname WHEN 'JONES' THEN 1 END) OVER (PARTITION BY job)
AS num_jones
FROM staff
)
WHERE num_jones > 0
AND sname != 'JONES';
SNAME JOB
HAYAT MANAGER
CLARK MANAGER