Вопрос № 50439: Доброе время суток! Вопрос новичка: возможно ли выбрать одним запросом из таблицы(MS SQL) все строки с повторяющимися значениями по неиндексированному текстовому полю? ...
Вопрос № 50.439
Доброе время суток! Вопрос новичка: возможно ли выбрать одним запросом из таблицы(MS SQL) все строки с повторяющимися значениями по неиндексированному текстовому полю?
Отправлен: 28.07.2006, 12:19
Вопрос задал: GreenJeen (статус: Посетитель)
Всего ответов: 6 Мини-форум вопроса >>> (сообщений: 5)
Отвечает: Козлов Алексей Сергеевич
Здравствуйте, GreenJeen!
Не могли Вы конкретнее описать проблему.
--------- Вещь хоть и глючная, но возможностей - уйма.
Ответ отправил: Козлов Алексей Сергеевич (статус: 2-ой класс)
Ответ отправлен: 28.07.2006, 12:30
Отвечает: gitter
Здравствуйте, GreenJeen!
Можно, например так:
select distinct fieldName from Table
Удачи!
Ответ отправил: gitter (статус: Студент)
Ответ отправлен: 28.07.2006, 12:34
Отвечает: Архангельский Андрей Германович
Здравствуйте, GreenJeen!
А почему нет
Select Count(Field),Field from Table
group by Field
order by 1
Только сверься по синтаксису для MS-SQL он своеобразный с отклонениями от стандарта
--------- Если дело заслуживает быть сделаным, то оно заслуживает чтобы его сделали ХОРОШО
Отвечает: Марк Крейн
Здравствуйте, GreenJeen!
Используйте следующий запрос: select * from table
Ответ отправил: Марк Крейн (статус: Студент)
Ответ отправлен: 28.07.2006, 13:26
Отвечает: Александр Шевченко
Здравствуйте, GreenJeen!
Если нужен лишь список значений, которые повторяются, то вот запрос:
select txt from table1 group by txt having count(txt)>1
а если же нужны все записи, в которых значение поля txt встречается больше одного раза то так:
select * from table1 where txt in (select txt from table1 group by txt having count(txt)>1)
--------- Вместо внутренней почты лучше стучитесь в аську
Ответ отправил: Александр Шевченко (статус: Студент)
Ответ отправлен: 28.07.2006, 13:46 Оценка за ответ: 5 Комментарий оценки: Спасибо! То что надо!
Отвечает: Игорь Елизаров
Здравствуйте, GreenJeen!
А в таблице какой-нибудь первичный индекс есть ?
тогда этот запрос выводит список повторяющихся значение поля field_name
select count (id) as count1, file_name from table
group by filename
having count(id) >1
ну а если ключа нет, можно попробовать так..
select count (*) as count1, file_name from table
group by filename
having count(i*) >1
Ответ отправил: Игорь Елизаров (статус: 5-ый класс)
Ответ отправлен: 29.07.2006, 23:01