|
Сложное объединение строк полученных по нескольким критериям
|
|||
---|---|---|---|
#18+
Задача: в БД есть некоторая таблица MyTable. Все строки MyTable соответствующие критерию a образуют множество строк A, а все строки соответствующие критерию b образуют множество строк В. Написать запрос, который возвращает объединение множеств A и B, при этом строки выводятся в следующем порядке: 1. Сперва все строки соответствующие только критерию a. 2. Затем все строки соответствующие критерию a и критерию b. 3. Под конец все строки соответствующие только критерию b. Критерии a и b не определенны заранее и формируются динамически. Что не получается: 1. сперва я подумал объединить два критерия a и b через оператор OR, но возникли проблемы с сортировкой. Я представляю как отсортировать строки по полю или выражению в котором участвуют несколько полей. Но как выразить сортировку по описанному выше критерию - не могу даже представить. 2. пробовал реализовать описанное поведение через три соответствующих запроса. Но такой подход не эффективен, в особенности, если кол-во критериев больше двух. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2022, 09:12 |
|
Сложное объединение строк полученных по нескольким критериям
|
|||
---|---|---|---|
#18+
Bakuard Но как выразить сортировку по описанному выше критерию - не могу даже представить. Код: sql 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.02.2022, 11:53 |
|
|
start [/forum/topic.php?fid=53&gotonew=1&tid=1993660]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
27ms |
get topic data: |
12ms |
get first new msg: |
6ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
others: | 258ms |
total: | 385ms |
0 / 0 |