Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Составление SQL-запросов > WITH AS стоит ли использовать


Автор: polin11 17.5.2018, 17:22
Использую СУБД Postgresql, есть запрос  
   
Код

SELECT *
FROM Table1
WHERE Filed1 IN (SELECT Fileld1 FROM Table2 WHERE Fileld2='A' AND Fileld3 IS NULL)

Запрос занимает большие ресурсы, нужно оптимизировать, хочу его переписать, используя WITH AS, таким образом     
Код

WITH  my_table AS (
   SELECT Fileld1 FROM Table2 WHERE Fileld2='A' AND Fileld3 IS NULL

SELECT *
FROM Table1
WHERE Filed1 IN (SELECT * FROM my_table)

скажите есть ли смысл это делать, есть ли какой - нибудь профит в этом? 

Автор: Akina 17.5.2018, 18:43
Перепишите на JOIN - толку будет гораздо больше. И индексы не забудьте создать.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)