[英]SQL nested query with alias
誰能解釋該查詢的執行方式,並且它是相關的嵌套查詢嗎?
select distinct id
from activity ac3
where ac3.activity_id = 151 and ac3.id in
(select ac2.id from activity ac2 where ac2.activity_id = 150)
它不是相關的子查詢。 外部查詢和嵌套查詢之間沒有鏈接。 請在此處查看相關子查詢的示例。
嵌套子查詢可以嵌套在其它子查詢中,它是嵌套在另一個SELECT語句中並返回中間結果的SELECT語句。 SQL執行內的次查詢,然后再下一級。 子查詢的結果是主查詢的查詢條件。
查詢執行與主查詢->子查詢->子子查詢等類似。
關聯子查詢 ,子查詢使用外部查詢中的值。 用於通過外部查詢處理的每一行的子查詢被計算一次。 這意味着子查詢被重復執行,對於外部查詢可能選擇的每一行,都會重復執行一次。
這是不相關的子查詢。
這不是一個相關查詢。 如果子查詢依賴於最外部查詢的結果,則它是一個相關查詢。 您需要閱讀更多內容。
這是一個簡單的子查詢。
執行計划 : select ac2.id from activity ac2 where ac2.activity_id = 150;
該查詢將首先執行,而主查詢則依賴於此查詢。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.