什么是共同相关的子查询?它与子查询有何不同?

时间:2017-03-03 12:57:10

标签: sql

请解释什么是共同相关的子查询以及它与普通子查询有何不同?您还解释了这些查询可以运行任何环境,也可以是特定于环境的。

1 个答案:

答案 0 :(得分:0)

相关子查询意味着查询本身的结果由外部查询中选择的行确定。

常规子查询:

SELECT ColA
    , (SELECT TOP 1 ColB FROM TableB)
FROM TableA

相关子查询:

SELECT ColA
    , (SELECT TOP 1 ColB FROM TableB b WHERE b.ColB < a.ColA)
FROM TableA a

第二种情况中子查询的结果取决于TableA中ColA中的值,该值位于子查询之外。