#sql #sql-server
#sql #sql-server
Вопрос:
Мне нужна помощь в конкретном сценарии, с которым я столкнулся.
У меня есть структура таблицы, подобная этой.
В этой таблице (назовем ее пользовательской таблицей) идентификатор является первичным ключом. Я хочу найти более высокое значение идентификатора, если данные дублируются в столбце username.
Для примера John указан 4 раза, а самый высокий идентификатор этих данных равен 10. Поэтому мне это нужно в моем результате.
Я могу найти дубликат, но с максимальным идентификатором у меня возникли некоторые проблемы.
Комментарии:
1. «но с максимальным идентификатором у меня возникла какая-то проблема» Вы рассматривали возможность использования
MAX
?2. Рассматривали ли вы
GROUP BY
иMAX()
.3. Пожалуйста, поделитесь своим текущим кодом и расскажите нам больше о том, что с ним не так («У меня возникла какая-то проблема»)
Ответ №1:
Использование функции MAX:
Перечисляет как дублирующиеся, так и не дублирующиеся строки
Select Max(ID), username from table group by username
Если вам нужно только дублировать, только тогда
Select Max(ID), username from table group by username
Having min(ID)<>Max(id)
Комментарии:
1. Спасибо, я думаю, это поможет. Я все усложнял