Сослаться на столбцы подзапроса

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

Модератор: rozhnev

Ответить
TRust
Сообщения: 11
Зарегистрирован: Пт апр 18, 2025 12:32 am

Сослаться на столбцы подзапроса

Сообщение TRust »

Как в SQL запросе сослаться на первый (или любой по порядку) столбец подзапроса, если текст подзапроса заранее неизвестен

Код: Выделить всё

select A from (select ...) where B is null
Здесь вместо A и B нужно подставить ссылки на первый и второй столбец подзапроса
Аватара пользователя
SQL*Plus
Сообщения: 352
Зарегистрирован: Ср апр 20, 2022 1:09 pm

Re: Сослаться на столбцы подзапроса

Сообщение SQL*Plus »

В PostgreSQL можно присвоить столбцам псевдонимы в алиасе таблицы:

Код: Выделить всё

SELECT A
FROM (SELECT 10, NULL UNION ALL SELECT 20, 'test') AS t(A, B)
WHERE B IS NULL;

|----|
| a  |
|----|
| 10 |
AS можно не писать:

Код: Выделить всё

SELECT A
FROM (SELECT 10, NULL UNION ALL SELECT 20, 'test') t(A, B)
WHERE B IS NULL;

|----|
| a  |
|----|
| 10 |
TRust
Сообщения: 11
Зарегистрирован: Пт апр 18, 2025 12:32 am

Re: Сослаться на столбцы подзапроса

Сообщение TRust »

В PostgreSQL можно присвоить столбцам псевдонимы в алиасе таблицы
Вот спасибо! Именно то, что нужно!!!
Аватара пользователя
SQL*Plus
Сообщения: 352
Зарегистрирован: Ср апр 20, 2022 1:09 pm

Re: Сослаться на столбцы подзапроса

Сообщение SQL*Plus »

К сожалению, в Oracle 26ai такая конструкция не работает... :-(

Я это проверил на сайте sqlize.online
Там есть "песочницы" для самых разных СУБД.
Рекомендую.
Ответить