有两个表:
a表: 商品id 编号 名称
1 001 A
2 002 B
3 003 C
注:(商品id主键)
b表: 编号 商品id 数量 类型
99 1 10 ZP
44 1 10 FP
99 2 10 ZP
注:(编号,商品id主键)
我想查一下a表里面的所以商品的库存数量.除了类型为FP的.
select * from a left join b on a.商品id=b.商品id where b.编号 not like '4%'
我发现这样写,商品编号为003的就不显示了.我想结果是:
编号 数量 类型
001 10 ZP
002 10 ZP
003 0 null谢谢..
a表: 商品id 编号 名称
1 001 A
2 002 B
3 003 C
注:(商品id主键)
b表: 编号 商品id 数量 类型
99 1 10 ZP
44 1 10 FP
99 2 10 ZP
注:(编号,商品id主键)
我想查一下a表里面的所以商品的库存数量.除了类型为FP的.
select * from a left join b on a.商品id=b.商品id where b.编号 not like '4%'
我发现这样写,商品编号为003的就不显示了.我想结果是:
编号 数量 类型
001 10 ZP
002 10 ZP
003 0 null谢谢..
left join
(
select * from b where 类型 <> 'FP'
) c
on a.商品id = c.商品id
(select 编号,sum(数量)as 数量,类型 from b where 类型<>'PF' group by 编号,类型)b on a.编号=b.编号
新手,问下,on后面的条件用WHERE和AND有什么区别
----------------
去看看這個帖子http://community.csdn.net/Expert/topic/5696/5696821.xml?temp=8.172244E-02