Я хочу найти всех пользователей, чье имя появляется хотя бы дважды в моей таблице пользователей. 'email' - это уникальное поле, но комбинация 'firstName' и 'lastName' не обязательно является уникальной.
Пока что я предложил следующий запрос, который очень медленный, и я даже не уверен, что он правильный. Пожалуйста, дайте мне знать лучший способ переписать это.
SELECT CONCAT(u2.firstName, u2.lastName) AS fullName
FROM cpnc_User u2
WHERE CONCAT(u2.firstName, u2.lastName) IN (
SELECT CONCAT(u2.firstName, u2.lastName) AS fullNm
FROM cpnc_User u1
GROUP BY fullNm
HAVING COUNT(*) > 1
)
Также обратите внимание, что приведенное выше возвращает список имен, которые появляются по крайней мере дважды (я так думаю, в любом случае), но мне действительно нужен полный список всех полей 'id' пользователя для этих имен. Таким образом, каждое имя, поскольку оно встречается как минимум дважды, будет связано как минимум с двумя полями идентификатора первичного ключа.
Спасибо за любую помощь!
Ионы