Это должно сработать:
SELECT
TYPE
FROM
dbo.HISTORY
WHERE
(TYPE LIKE '%email%') OR (TYPE LIKE '%call%')
GROUP BY
CASE
WHEN type LIKE '%email%' THEN 'email'
WHEN type LIKE '%call%' THEN 'call'
ELSE NULL
END
Хотя я бы посоветовал иметь таблицу кодов типов с другим столбцом, который сообщает, считается ли каждый тип электронной почтой или вызовом.Тогда вы не зависите от имени типа, следующего за определенным форматом, который наверняка будет забыт в будущем.Затем вы можете легко сгруппировать по этому:
SELECT
H.type
FROM
dbo.History
INNER JOIN dbo.History_Types HT ON
HT.history_type_code = H.history_type_code AND
HT.history_type_category IN ('Email', 'Call')
GROUP BY
HT.history_type_category