Как отсортировать идентификаторы, когда у меня есть таблица типа
CAR
ID COLOR
1 Red
1 Black
2 BLUE
2 Black
3 Yellow
3 Red
Моя цель состоит в том, чтобы все идентификаторы, имеющие цвет «Красный», были выброшены, так что только ID = 2
будет мой результат. С моим SQL я могу найти идентификаторы, которые имеют красный цвет с Filter = 1
, но они все еще отображаются, потому что ID = 1
может также иметь черный цвет (или ID = 3 может иметь желтый цвет), так что Filter = 0
и передается.
with SORTOUT as
(
ID,
CASE WHEN
COLOR = RED THEN 1
ELSE 0
END AS FILTER
FROM TABLE
)
SELECT * FROM ID_TABLE T1
JOIN SORTOUT T2 on (T1.ID = T2.ID)
WHERE FILTER = 0