shaoxuecheng 发表于 2008-5-18 16:53

急请高手指教SQL

请来看看这个程序
一个表,三 个字段,aa,bb,cc
当aa相等 时,
去掉bb 重复值后,求cc的 和(bb字段值相等时cc一定相等)
比如
aa   bb  cc
1    1   10
1    1   10
1    2   30
求出的cc是   10 + 30 = 40
这段SQL把我难住了???

happynight 发表于 2008-5-18 22:58

Create Table #ls1 (aa varchar(10),bb varchar(10),cc int)
INSERT INTO #ls1 VALUES(1,1,10)
INSERT INTO #ls1 VALUES(1,1,10)
INSERT INTO #ls1 VALUES(1,2,30)
SELECT * FROM #ls1

SELECT SUM(cc) FROM
       (SELECT aa,bb,SUM(DISTINCT cc) cc FROM #ls1 GROUP BY aa,bb) a

happynight 发表于 2008-5-18 23:00

也许不必要这么麻烦
SELECT SUM(cc) FROM
       (SELECT DISTINCT aa,bb,cc FROM #ls1) a

页: [1]

编程论坛