两张表,
A表为主体表
ID(自增长)
ClientName
B表为主体表的细表
ID (自增长)
JoinID (外链关联到A表的ID)
ProductName
Count
例B表的数据为
1 1 大白菜 10
2 1 大白菜 5
3 1 西红杭 20
4 1 黄瓜 5
5 2 大黄鱼 10
A表数据库
1 桥头蔬菜点
2 北关水产站
求大神能否一条SQL语句显示出(例如查询出A表主键为1的数量合计)
ID ClientName SumCount
1 桥头蔬菜点 40
将B表关联到A表的数据进行相加并能显示出
------解决思路----------------------
SELECT A.ID,A.ClientName,SUM(B.Count)
FROM A
LEFT JOIN B ON A.ID=B.JoinID
GROUP BY A.ID,A.ClientName
------解决思路----------------------
SELECT T0.ID,T0.ClientName,sum(t1.Count) SumCount
FROM A T0 LEFT JOIN B T1
ON A.ID=B.JoinID
GROUP BY A.ID,A.ClientName
------解决思路----------------------
create table #A
(
ID INT IDENTITY(1,1),
ClientName VARCHAR(50)
)
INSERT INTO #A VALUES
('桥头蔬菜点'),
('北关水产站')
CREATE TABLE #B
(
ID int IDENTITY(1,1),
JoinID int,
ProductName varchar(50),
Counts int
)
insert into #B values
(1,'大白菜',10),
(1,'大白菜',5),
(1,'西红杭',20),
(1,'黄瓜',5),
(2,'大黄鱼',10)
SELECT a.ID,a.ClientName,SUM(b.Counts) as SumCount
FROM #A a
JOIN #B b on a.ID=b.JoinID
group by a.ID,a.ClientName
/*
ID ClientName SumCount
----------- -------------------------------------------------- -----------
1 桥头蔬菜点 40
2 北关水产站 10
(2 行受影响)
*/