就是现在有两个表A和B,是互相关联的两个表。
A表
产品名称 产品数量
黄瓜 2
茄子 3B表
产品名称 产品数量
黄瓜 1
黄瓜 3
茄子 1
茄子 1
茄子 1
茄子 1
我的意思是怎么根据A表统计B表的产品数量和A表比较。
SELECT *,count(B.产品数量) FROM A INNER JOIN B ON A.产品名称= B.产品名称 where A.产品数量>B.产品数量 像这样的语句怎么写啊。
A表
产品名称 产品数量
黄瓜 2
茄子 3B表
产品名称 产品数量
黄瓜 1
黄瓜 3
茄子 1
茄子 1
茄子 1
茄子 1
我的意思是怎么根据A表统计B表的产品数量和A表比较。
SELECT *,count(B.产品数量) FROM A INNER JOIN B ON A.产品名称= B.产品名称 where A.产品数量>B.产品数量 像这样的语句怎么写啊。
(
select a. 产品数量 as 产品数量2,b.* from B as b left join A as a
on a.产品名称=b.产品名称
) as c
where c.产品数量>c.产品数量2
from
(
select 产品名称,产品数量 from A
)AA
left join
(
select distinct(产品名称),count(产品数量) from B group by 产品名称
)BB
on AA.产品名称=BB.产品名称 and AA.产品数量>BB.产品数量看这个可以否
(Select 产品名称, SUM( 产品数量 ) as TotalCount From B Group By 产品名称 ) as
BTotalTable
where A.产品名称= BTotalTable.产品名称 where A.产品数量>BTotalTable.TotalCount
FROM A
LEFT JOIN B ON B.产品名称=A.产品名称
GROUP BY A.产品名称
HAVING IsNull(Sum(A.产品数量),0)>IsNull(Sum(B.产品数量),0) //只查A数量>B数量的产品