По сути тебе нужно найти дубли по alias, почему по этой колонке, ты сам отвечаешь в вопросе: «должно быть» и результаты сгруппированных запросов.
Чтобы в этом убедиться довольно просто в запрос добавить фильтрацию по count(*), например:
SELECT alias
, count(*) AS cn
FROM `site_resources`
GROUP BY alias
HAVING count(*) > 2;
В целом это ответит на вопрос, по каким alias есть записи, которые по уникальным ID не группируются.
Если же хочется прям посмотреть на эти записи, то:
SELECT *
FROM (
SELECT id
, alias
, ROW_NUMBER() OVER (PARTITION BY alias ORDER BY id) AS rn
FROM `site_resources`
) AS t
WHERE t.rn > 1;