SQL Server 查询处理中的各个阶段(SQL执行顺序)示例

在大数编程语言中,代码按编码顺序被处理,但是在sql语言中,第一个被处理的子句是FROM子句,尽管SELECT语句第一个出现,但是几乎总是最后被处理。每个步骤都会产生一个虚拟表,该虚拟表被用作下一个步骤的输入。这些虚拟表对调用者(客户端应用程序或者外部查询)不可用。只是最后一步生成的表才会返回 给调用者。如果没有在查询中指定某一子句,将跳过相应的步骤。下面是对应用于sql server 2000和sql Server 2005的各个逻辑步骤的简单描述。
<div class="codetitle"><a style="CURSOR: pointer" data="35987" class="copybut" id="copybut35987" onclick="doCopy('code35987')"> 代码如下:

<div class="codebody" id="code35987">
(8)SELECT (9)disTINCT (11)