Пример данных в вопросе неполный, чтобы получить желаемый результат; пожалуйста, попробуйте ниже. Добавлены две строки для BOGGIE и STEPH с нулевыми планами; дайте нам знать, что этого достаточно.
WITH player
AS (SELECT 'BOGGIE' name,
'PLAN200' plan,
200 amount,
24 contract
FROM DUAL
UNION
SELECT 'STEPH ' name,
'PLAN200' plan,
200 amount,
24 contract
FROM DUAL
UNION
SELECT 'BOGGIE' name,
NULL plan,
NULL amount,
NULL contract
FROM DUAL
UNION
SELECT 'STEPH ' name,
NULL plan,
NULL amount,
NULL contract
FROM DUAL)
SELECT DISTINCT a.name, b.plan
FROM player a
LEFT OUTER JOIN player b
ON a.name = b.name
AND ( a.name IN ('BOGGIE', 'STEPH')
OR b.plan IN ('PLAN200', 'PLAN999'))
выход
NAME PLAN
------ -------
BOGGIE PLAN200
BOGGIE
STEPH PLAN200
STEPH