Может ли быть так добр, чтобы помочь мне с следующий:SQL подзапрос рода
У меня есть запрос, который приводит в двух столбцах одной прямолинейный (Columna) из таблицы, а другие генерируются из подзапроса (columnB). Если я сделаю сортировку (то есть ORDER BY) на столбце B, я получаю гораздо более медленный ответ, а затем, делая то же самое на столбце A (50 + times). Есть ли способ ускорить сортировку на columnB, чтобы приблизиться к скоростям, достигнутым при сортировке columnA?
Примечание: Двигатель Postgres
Update: Запрос похож на:
select columnA, array_to_string(array(select ... from tableB where ...), '%') as columnB
from tableA
where ...
order by columnA
Любой совет высоко ценится.
Update # 2: решаемые его, делая вид в новом запросе, а затем кормил результаты основного запроса (с помощью ИНЕКЕ, чтобы выбрать только частичное количество строк вместо целого набора, который дал мне работу мне нужно). Спасибо всем, кто ответил.
Дополнительная информация была бы полезной, как схема таблицы и движка (sqlite, sqlserver, postgres, mysql), чтобы получить дополнительную информацию. – Freaktor
Пожалуйста, разместите запрос. Я полагаю, вы работаете с ним в другом окне, трудно ли скопировать и вставить его для нас? Почему люди всегда этого забывают? – Jasmine
Ну, мы можем помочь вам, не видя ваш запрос (или, по крайней мере, упрощенную версию). У вас может быть ситуация, когда подзапрос может быть заменен на 'JOIN' – Lamak