@koliane

Есть ли возможность избежать дублей подзапросов?

Есть таблица, в которой хранятся, например, цены на определенную валютную пару. таблица выглядит так:
fcb89dc533.jpg
Нужно получить выборку, где в первом столбце будет цена из определенного среза этой таблицы, а во втором столбце - тоже цена из этого среза, но больше, чем первая.

Т.е., запрос будет выглядеть следующим образом:
SELECT part_1.price, part_2.price 
FROM (SELECT * FROM prices WHERE id > 1000 AND id < 2000000) AS part_1, (SELECT * FROM prices WHERE id > 1000 AND id < 2000000) AS part_2
WHERE part_1.price < part_2.price


Из запроса видно, что у нас 2 одинаковых подзапроса. Но это, как я понимаю, не по "феншую", т.к. одни и те же данные мы получаем несколько раз.
Отсюда вопрос, можно ли этот запрос переписать так, чтобы эти подзапросы не дублировась? И если можно, то как?

Задача гипотетическая, настоящая задача сложнее и дублей этих там будет гораздо больше. Т.е., данный пример привел, чтобы была ясна проблема.
Т.е., нужно получить ответ именно по дублям, как от них избавиться

Использую postgresql
  • Вопрос задан
  • 125 просмотров
Пригласить эксперта
Ответы на вопрос 1
dimonchik2013
@dimonchik2013
non progredi est regredi
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы