你这是好几个问题。 多表查询,内连接、外连接、自然连接、左连接、右连接有什么区别? 这个是概念,可以 Google。 为什么查询的时候要消除笛卡尔积,如果不消除有什么问题吗?笛卡尔积有什么影响? 简单解释一下,举个例子: 表A共50行 表B共100行 我们进行多表查询。(假设结果是30行) 第一种方式,先求A和B的笛卡尔积,共得到50*100=5000行,然后在5000行的一个临时表里面查找符合条件的30行(映射)。 第二种方式,先在表A中查询符合条件的,得到10个结果,然后把结果和表B相乘(笛卡尔积),得到1000行的临时表,最后再查找一次(映射)。 还有第三种方式,就是先操作B,映射的结果在和A相乘。
你这是好几个问题。
这个是概念,可以 Google。
简单解释一下,举个例子:
我们进行多表查询。(假设结果是30行)
第一种方式,先求A和B的笛卡尔积,共得到50*100=5000行,然后在5000行的一个临时表里面查找符合条件的30行(映射)。
第二种方式,先在表A中查询符合条件的,得到10个结果,然后把结果和表B相乘(笛卡尔积),得到1000行的临时表,最后再查找一次(映射)。
还有第三种方式,就是先操作B,映射的结果在和A相乘。