这一点需要在具体的应用上特别注意,尤其是使用OUTER JOIN的时候会添加一些NULL,可能由于使用count(*)而不是count(字段名)导致不正确的计数。 8)、这一步执行的是SELECT操作,然后SELECT出现在查询语句的最前面,但是它是到了第八步才被执行,这一步是对VT7上的选择SELECT指定的列。生成VT8。另外,在SELECT中不能对前面字段的别名进行使用,也就是SELECT的别名只有在整个SELECT子句执行完之后才有效。
这一点需要在具体的应用上特别注意,尤其是使用OUTER JOIN的时候会添加一些NULL,可能由于使用count(*)而不是count(字段名)导致不正确的计数。 8)、这一步执行的是SELECT操作,然后SELECT出现在查询语句的最前面,但是它是到了第八步才被执行,这一步是对VT7上的选择SELECT指定的列。生成VT8。另外,在SELECT中不能对前面字段的别名进行使用,也就是SELECT的别名只有在整个SELECT子句执行完之后才有效。
好了,一般的SQL查询语句都是按照这个顺序执行的,当然具体的逻辑查询和物理查询方案这里我们没有涉及,仅仅是介绍每一步的执行顺序和它的作用,当然其中还涉及一些mysql中的规则,以后使用SQL查询语句之前要首先理好这个顺序,然后再去考虑使用什么样的查询语句才能得到希望的结果。