Есть таблица, в которой есть фамилии и id. Довольно много дублирующихся. Необходимо выбрать такие id, соответствующие фамилии которых встречаются в таблице больше одного раза. На мискле, ессно.
Код (Text): SELECT id FROM Table WHERE name IN (SELECT name FROM Table GROUP BY name HAVING (COUNT(name) > 1))
В общем, разница суровая. Но тут больше роялит, что я программированием год не занимался, а занимался консультированием по ораклу. Сплошной трем, в общем.
Я думаю мой запрос и на MySql отработает, т.к. в нем присутствует голый SQL без особенностей какого-либо сервера,а тэстился он воще под MsSql
Грм. У меня такой запрос Код (Text): select gu_id from guests where gu_dupe in ( select gu_dupe from guests group by gu_dupe having count(gu_dupe) > 1) дает такую ошибку Код (Text): #1064 - You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'select gu_dupe from guests group by gu_dupe having count(gu_
а версия какая? у меня на 5-ом отработало нормально. вот еще вариант: Код (Text): SELECT DISTINCT a.id FROM table AS a INNER JOIN table AS b ON a.id != b.id AND a.name = b.name