首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

SQL join 疑义

2013-10-01 
SQLjoin 疑问最近写了条SQL语句发现一个疑问 SELECT t1.*FROM 物料分仓表 t1 LEFT OUTER JOIN物料总和表 t

SQL join 疑问
最近写了条SQL语句发现一个疑问 

SELECT t1.*
FROM 物料分仓表 t1 LEFT OUTER JOIN
      物料总和表 t2 ON t1.物料代码 = t2.物料代码
LEFT OUTER JOIN 仓库 t3 ON  t1.发料仓库 = t3.仓库名
LEFT OUTER JOIN 单位 t4 ON  t1.单位 = t4.单位名称
ORDER BY t1.物料代码


物料分仓表的记录条数是 19127 条 可是关联了 仓库表 和 单位表后 数量变成了 25195 条

LEFT OUTER JOIN 仓库 t3 ON  t1.发料仓库 = t3.仓库名
LEFT OUTER JOIN 单位 t4 ON  t1.单位 = t4.单位名称  

LEFT OUTER JOIN 不是关联左表 以左表的 数量为基准么 多出来的数据是什么情况啊

[解决办法]
假设A、B两表,以ID为关联,
A有数据:
1 abc
B有数据:
1 cde 
1 efg
那么select * from A LEFT JOIN B ON A.ID=B.ID的结果是:
1  abc cde
1  abc efg
这就是所谓的多出来的数据

热点排行