MYSQL中笛卡尔乘积与内联结
笛卡尔乘积:举例说明
首先介绍表结构
Vendors表:6个供应商ID(vend_id),6个供应商商户(vend_name)
Products表:14个供应商ID(vend_id),实际是4个供应商。14个产品信息(prod_name)
如下图所示1
按照笛卡尔乘积在Mysql中实现会有84种结果:vendors表中的每一行数据与products表中的每一行数据均会组合。
select count(*) from vendors,products;
如下图所示2
按照内联结在Mysql中实现会有14种结果:vendors表中与products表中相同的供应商ID组合,一个供应商对应多个商品信息,共形成14条数据。
select count(*) from vendors A join products B on A.vend_id=B.vend_id ;
如下图所示3