Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Помогите с группировкой и сортировкой пожалуйста  [new]
sclef
Member

Откуда:
Сообщений: 3
Добрый день, помогите плз составить правильно SQL запрос
есть таблица
ID Description Option
1 Б йцу
2 Б апв
3 В раав
4 А ваыва
5 Б аппппв
6 В рааапв
7 А ваыва

необходимо отсортировать по ID с групировкой по Description
тоесть в итоге должно получиться так:
1 Б йцу
2 Б апв
5 Б аппппв
3 В раав
6 В рааапв
4 А ваыва
7 А ваыва

Я знаю что таблица не нормализована, к сожалению по условию, применять нормализацию нельзя.
набросал такой скрипт
Select Description, MIN(ID) as ID
from tbl
Group by Decription
Order By ID asc
таким образом у меня есть правильный порядок Description
теперь надо точно в таком же порядке вывести все колонки со всеми записями.
пытался гуглить, норм запроса для похожишь примеров так и не придумал(
28 апр 16, 13:16    [19117168]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с группировкой и сортировкой пожалуйста  [new]
Glory
Member

Откуда:
Сообщений: 104760
sclef
необходимо отсортировать по ID с групировкой по Description
У вас и так уже отсортировано по ID
тоесть в итоге должно получиться так:
1 Б йцу
2 Б апв
5 Б аппппв
3 В раав
6 В рааапв
4 А ваыва
7 А ваыва

Это у вас "отсортировано по ID" называется ?
28 апр 16, 13:19    [19117201]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с группировкой и сортировкой пожалуйста  [new]
Glory
Member

Откуда:
Сообщений: 104760
Select a.*, (select top 1 id from tbl b where b. Description =  a.Description and b.id <= a.id order by b.id desc) as min_id
from tbl a
28 апр 16, 13:32    [19117290]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с группировкой и сортировкой пожалуйста  [new]
sclef
Member

Откуда:
Сообщений: 3
видимо немного не правильно объяснил, сортировка по Description но сам Description должет быть отсортирован по минимальному ID.
к сожалению ваш код вывел результат отсортированный только по ID тоесть тоже самое что и в первом моем примере(
28 апр 16, 14:11    [19117515]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с группировкой и сортировкой пожалуйста  [new]
Glory
Member

Откуда:
Сообщений: 104760
sclef
к сожалению ваш код вывел результат отсортированный только по ID тоесть тоже самое что и в первом моем примере(

в моем коде вообще нет сортировки.
Зато в нем есть поле, где для каждого Description есть значение минимального ID.
28 апр 16, 14:14    [19117529]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с группировкой и сортировкой пожалуйста  [new]
sclef
Member

Откуда:
Сообщений: 3
все заработало, спасибо
немного подкорректировал скрипт и теперь все ок: вот тот, который мне подошел:
Select a.*, (select top 1 id from tbl b where b. Description =  a.Description and b.id <= a.id order by b.id asc) as min_id
from tbl a
order by min_id
28 апр 16, 14:17    [19117544]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с группировкой и сортировкой пожалуйста  [new]
_djХомяГ
Guest
order by min_id,id
для вашего условия
28 апр 16, 14:21    [19117572]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить