SQL连接查询的由来:人们对20实际80年代的SQL标准提出批评,认为SELECT语句中无直接的连接或自然连接操作。SQL吸收了这个意见,用较为直接的形式表示各式各样的连接操作,这些操作可在FROM字句中以直接的形式指出。在书写两个关系的连接操作时,SQL2把连接操作符分成连接类型和连接条件两部分(如果图1)连接类型决定了如何处理连接条件中不匹配的元祖。连接条件决定了两个关系中哪些元祖应该匹配,以及连接结果中出现哪些属性。

图1

连接类型 连接条件
INNER JOIN(内连接) NATURAL(写在连接类型的左边)
LEFT OUTER JOIN(左外连接) ON 写在连接类型的右边
RIGHT OUTER JOIN(右外连接) USING 写在连接类型的右边
FULL OUTER JOIN(完全外连接)  
   

       SQL join 连接的限制:出了sql join 连接查询后,是方便了我们查询。但是当数据超过千万条时却不能再用join了因为此时如果用join的话速度会很慢。这就是好多程序员再优化程序时经常做的一部。去查找有没有过万的表去join过万数据的表。然后把它拆开。这样会明显增加速度。

还有为了增加查询速度在经常用到的字段,还有where后面经常用的也可以加一些非聚集索引等来加快查询的速度。

       总之大数据避免用join连接查询(因为用join的时候库在做笛卡尔基如果数据量过大会很慢的,甚至卡死)。

posted on 2012-08-09 15:11  王洪洪  阅读(718)  评论(0编辑  收藏  举报