Member 13276583 Ответов: 1

Я должен получить нижеприведенный вывод


Стол :
Id. Тип
1. ХХХ
1. Bbb
2. ХХХ
3. ХХХ
4. Yyy
4. ХХХ

Выход:
Id. Тип
2. ХХХ
3. ХХХ

Что я уже пробовал:

Вывод должен отображать тип содержащий xxx который имеет только одну запись id

1 Ответов

Рейтинг:
5

OriginalGriff

Вам нужно сгруппировать с помощью предложения HAVING для идентификации строк с одной записью:

SELECT ID FROM MyTable GROUP BY ID HAVING COUNT(ID) = 1
Это дает вам только те значения идентификаторов, которые вас интересуют:
ID
2
3
Затем вы используете соединение обратно к исходной таблице, чтобы получить тип и идентификатор вместе:
SELECT a.ID, b.Type 
FROM (SELECT ID FROM MyTable GROUP BY ID HAVING COUNT(ID) = 1 ) a
JOIN MyTable b ON a.ID = b.ID
Что дает вам желаемый результат:
ID	Type
2	xxx       
3	xxx