|
сортировка данных в запросе
|
|||
---|---|---|---|
#18+
Добрый день, Есть таблица такого вот типа id_dep | id_dep_parent | dep_name_short 1 null Администраторы 3 11 Сектор №1 (444-1) 4 14 Лаборатория №551 5 4 Сектор №1 (551-1) 6 4 Сектор №2 (551-2) 7 14 Лаборатория №441 8 7 Сектор №1 (441-1) 9 7 Сектор №2 (441-2) 10 7 Сектор №3 (441-3) 11 14 Лаборатория №444 13 11 Сектор №2 (444-2) 14 null Руководство 15 7 Сектор №4 (441-4) Необходимо вывести из этой таблицы сортированные данные , т.е. вот в таком порядке Руководство и Администраторы игнорируем, а дальше 7 14 Лаборатория №441 8 7 Сектор №1 (441-1) 9 7 Сектор №2 (441-2) 10 7 Сектор №3 (441-3) 15 7 Сектор №4 (441-4) 11 14 Лаборатория №444 3 11 Сектор №1 (444-1) 13 11 Сектор №2 (444-2) 4 14 Лаборатория №551 5 4 Сектор №1 (551-1) 6 4 Сектор №2 (551-2) Как это сделать Select запросом? Или еще как-то по другому можно? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.04.2020, 11:47 |
|
сортировка данных в запросе
|
|||
---|---|---|---|
#18+
Serega325, нормально никак. Кто-то нарушил 3 НФ ... |
|||
:
Нравится:
Не нравится:
|
|||
23.04.2020, 11:51 |
|
сортировка данных в запросе
|
|||
---|---|---|---|
#18+
Serega325, ну а какой принцип сортировки? По алфавиту, но дерево? Версия FB какая? На вскидку - в LangRef есть пример построения дерева через "with recursive". Это работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.04.2020, 11:58 |
|
сортировка данных в запросе
|
|||
---|---|---|---|
#18+
Версия 2.5, сортировка по дереву нужна. А можете подсказать как with recursive реализовать в данном случаи, так как я попробовал таким образом мWITH RECURSIVE dep_rec (id_dep, id_dep_parent, dep_name_short) AS ( SELECT id_dep, id_dep_parent, dep_name_short FROM s_department where id_dep not in (1) UNION ALL SELECT dep_rec.id_dep, dep_rec.id_dep_parent, dep_rec.dep_name_short FROM dep_rec, s_department dep WHERE dep_rec.id_dep = dep.id_dep_parent and dep_rec.id_dep not in (1) ) SELECT id_dep, id_dep_parent, dep_name_short FROM dep_rec WHERE id_dep_parent is null Выдало ошибку Too many concurrent executions of the same request. KreatorXXI Serega325, ну а какой принцип сортировки? По алфавиту, но дерево? Версия FB какая? На вскидку - в LangRef есть пример построения дерева через "with recursive". Это работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.04.2020, 12:26 |
|
сортировка данных в запросе
|
|||
---|---|---|---|
#18+
К сожалению структуру таблицы сейчас уже не переделать, мне она в таком виде досталась. Симонов Денис Serega325, нормально никак. Кто-то нарушил 3 НФ ... |
|||
:
Нравится:
Не нравится:
|
|||
23.04.2020, 12:27 |
|
сортировка данных в запросе
|
|||
---|---|---|---|
#18+
Serega325, как-то так Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
... |
|||
:
Нравится:
Не нравится:
|
|||
23.04.2020, 12:35 |
|
сортировка данных в запросе
|
|||
---|---|---|---|
#18+
Спасибо большое, хотя бы так. А без FULL_NAME можно как-то обойтись? Симонов Денис Serega325, как-то так Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
... |
|||
:
Нравится:
Не нравится:
|
|||
23.04.2020, 16:30 |
|
сортировка данных в запросе
|
|||
---|---|---|---|
#18+
Serega325, вместо * перечисли поля явно без FULL_NAME. Мне ничего другого в голову не приходит. Может сам чего придумаешь ... |
|||
:
Нравится:
Не нравится:
|
|||
23.04.2020, 16:33 |
|
сортировка данных в запросе
|
|||
---|---|---|---|
#18+
И на этом спасибо огромное Симонов Денис Serega325, вместо * перечисли поля явно без FULL_NAME. Мне ничего другого в голову не приходит. Может сам чего придумаешь ... |
|||
:
Нравится:
Не нравится:
|
|||
23.04.2020, 16:40 |
|
сортировка данных в запросе
|
|||
---|---|---|---|
#18+
Можно вынести сортировку в предварительный подзапрос: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26.
По крайней мере у меня похожий запрос отрабатывает как ожидалось. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2020, 07:24 |
|
|
start [/forum/topic.php?fid=40&fpage=15&tid=1560371]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
others: | 15ms |
total: | 145ms |
0 / 0 |