Здесь немного «особенного» момента. В основном у меня есть таблица БД для перечисления файлов и их атрибутов (размер, дата создания и т. Д.). Будучи самопровозглашенным (пограничным бредовым) SQL-одарением, вы можете себе представить мое удивление, когда мне не удалось выяснить, каким образом можно индивидуально составлять список только тех файлов, чья [INSERT ATTRIBUTE HERE] появлялась несколько раз.
Например, скажем, я хотел видеть все файлы, размер которых (или дата создания), которые встречались в таблице более одного раза, но я все же хотел, чтобы они были перечислены отдельно. Или даже лучшее приложение: группа файлов, которые совместно используют хеши MD5, но только те, которые появляются несколько раз (т.е. дублируются), и я все еще хочу перечислить каждый файл независимо. Очевидно, я мог бы пройтись по БД несколько раз, но меня интересует один запрос. Есть мысли?
Best.
[РЕДАКТИРОВАТЬ # 1 (ошибка в подсчете)]
select *
from @foo where FileNameOnDisk in (
select FileNameOnDisk, count([INSERT_ATTRIBUTE_HERE]) as num from @foo
group by FileNameOnDisk
having num > 1
)order by FileNameOnDisk