Можем ли мы написать подзапрос между SELECT и FROM - PullRequest
6 голосов
/ 12 марта 2010

я хочу знать, как написать подзапрос между SELECT и FROM как

SELECT Col_Name,(Subquery) 
  From Table_Name 
 Where Some_condition

Ответы [ 2 ]

6 голосов
/ 12 марта 2010

Это:

SELECT y.col_name,
       (SELECT x.column
          FROM TABLE x) AS your_subquery
  FROM TABLE y
 WHERE y.col = ?

... это типичный подзапрос в предложении SELECT. Некоторые называют это «отбором». Это:

SELECT y.col_name,
       (SELECT x.column
          FROM TABLE x
         WHERE x.id = y.id) AS your_subquery
  FROM TABLE y
 WHERE y.col = ?

... это коррелированный подзапрос. Это связано с тем, что результат подзапроса ссылается на таблицу во внешнем запросе (в данном случае y).

Фактически, просто напишите любой дополнительный оператор SELECT, который вы хотите в предложении SELECT, но он должен быть заключен в квадратные скобки.

2 голосов
/ 12 марта 2010

вы можете сделать это, но вы должны использовать псевдоним для подзапроса

SELECT Col_Name,(Subquery) as S
  From Table_Name 
 Where Some_condition
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...