有两张表:A表人员信息表,B表业务表,两张表通过身份证号关联。A表里面身份证号已建立索引,以下两种SQL,哪种执行效率更好:
注:A表有2000万数据,B表只有3万条数据
1、select A.xm from A ,B where A.SFZH=B.SFZH;
2、select (select A.xm from A where A.SFZH=B.SFZH)XM from B;
以上两种,哪个效率更高,效率更高的原因是什么,麻烦你们详细分析分析。
注:A表有2000万数据,B表只有3万条数据
1、select A.xm from A ,B where A.SFZH=B.SFZH;
2、select (select A.xm from A where A.SFZH=B.SFZH)XM from B;
以上两种,哪个效率更高,效率更高的原因是什么,麻烦你们详细分析分析。
(1) FROM <left_table>
(3) <join_type> JOIN <right_table>
(2) ON <join_condition>
(4) WHERE <where_condition>
(5) GROUP BY <group_by_list>
(6) WITH {CUBE | ROLLUP}
(7) HAVING <having_condition>
(10) ORDER BY <order_by_list> 上面给出的事Oracle执行sql语句的顺序,LZ可以自己分析一下
另外,不适用子查询应该会好一点