WEB开发网
开发学院数据库MSSQL Server SQL开发中容易忽视的一些小地方 阅读

SQL开发中容易忽视的一些小地方

 2008-10-13 10:07:39 来源:WEB开发网   
核心提示: 执行计划效果如图一:网络观点一结论:从图上可以非常清楚的看出,三者在执行计划上完成一样.为此本人并不同意网络观点一.表在前与后并不影响最终的执行效率.大家有什么不同的意见望指教.说明:1:WHERE子句中使用的连接语句,在数据库语言中,SQL开发中容易忽视的一些小地方(5),被称为隐性连接

执行计划效果如图一:

SQL开发中容易忽视的一些小地方

网络观点一结论:从图上可以非常清楚的看出,三者在执行计划上完成一样.为此本人并不同意网络观点一.表在前与后并不影响最终的执行效率.大家有什么不同的意见望指教.

说明:

1:WHERE子句中使用的连接语句,在数据库语言中,被称为隐性连接。INNER JOIN称为显性连接。WHERE 和INNER JOIN产生的连接关系,没有本质区别,结果也一样。但是!隐性连接随着数据库语言的规范和发展,已经逐渐被淘汰,比较新的数据库语言基本上已经抛弃了隐性连接,全部采用显性连接了。

2:join的分类:

1> inner join:理解为“有效连接”,

2>left join:理解为“有左显示”,

3> right join:理解为“有右显示”

4> full join:理解为“全连接”

3 .join可以分主次表 左联是以左边的表为主,右边的为辅,右联则相反

网络观点二:inner join 与 where 在效率上是否一样?原文地址: http://topic.csdn.net/t/20050520/13/4022440.html 原文中有下面一段话:

---------------------------引用----------------------------------------------

4 指明多表关系会大大提高速度 ,如

SELECT A.X,B.Y FROM A B WHERE A.X=B.X

SELECT A.X,B.Y FROM A INNER JOIN B ON A.X=B.X

2句结果一样,但是速度相差很多,时间复杂度分别是 O(2n)和O(n*n)

------------------------------------------------------------------------------

上一页  1 2 3 4 5 6  下一页

Tags:SQL 开发 容易

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接