использование результата запроса - CodeHelper

использование результата запроса

0

Приветствую. Столкнулся с необходимостью использования MSSQL. Помогли мне составить такой запрос. SELECT TOP 1 [DEP], Count([DEP]) as Workers

From [P]

Group By [DEP]

Order by Workers DESC

результат - 2 поля. 1- (DEP)параметр который встречается чаще всего, 2-(Workers)количество упоминаний

Далее мне надо вывести список строк сортированных по параметру DEP

Select Имя, Фамилия, Отчество From P Where DEP=Вот сюда надо вставить значение полученное в результате запроса приведенного выше Из поля DEP.

Select Имя, Фамилия, Отчество From P Where DEP=1

Select Имя, Фамилия, Отчество From P Where DEP=2

Select Имя, Фамилия, Отчество From P Where DEP=3

Select Имя, Фамилия, Отчество From P Where DEP=4

Select Имя, Фамилия, Отчество From P Where DEP=5

Select Имя, Фамилия, Отчество From P Where DEP=6

Как это сделать?

SilentEnemy

Не понятно, зачем вы вообще просили выводить только максимально частотное значение, если в следующем же вопросе просите отсортировать по самому полю, а не по его частотности.

Новые ответы


0

Вот запрос, который выведет все ФИО у которых максимально частотное значение поля DEP:

Select Имя, Фамилия, Отчество From P 
    Where DEP = (SELECT TOP 1 [DEP] From [P] Group By [DEP] Order by Count([DEP]) DESC)

Если вам нужна сортировка всех ФИО по частотности значения в поле DEP (а не только максимально частотного), то запрос будет выглядеть так:

Select Имя, Фамилия, Отчество From P 
    Where DEP In (SELECT [DEP] From [P] Group By [DEP] Order by Count([DEP]) DESC)

Запрос выведет вам все строки со всеми ФИО, в порядке частотности поля DEP, т.е. сначала все ФИО, у которых поле DEP чаще всех встречается, затем все остальные по такому-же принципу.


v1.7.123.556
© 2009—2010 CodeHelper FAQ | О сайте | Обратная связь | История изменений | Статьи
Creative Commons LicenseМатериалы сайта распространяются под лицензией Creative Commons Attribution-Share Alike 3.0 Unported.