3
TABLE 1
STAFF_NO TYPE AMOUNT
A1 O 300
B3 A 10
A1 A 45
C3 O 70
C4 A 300
D4 O 100
TABLE2
STAFF_NO CODE
A1 SS1
B3 SS1
C3 SS2
C4 SS2
D4 SS2
正确的总和()值I内加入2个表和选择代码,员工和总和在高达两个类型A'based上代码“O”和”。 这里是我的SQL语句:如何显示基于该类型
SELECT DISTINCT B.CODE,
COUNT(DISTINCT B.CODE) AS HEADCOUNT,
O=(SELECT SUM(AMOUNT) FROM TABLE1 WHERE TYPE ='O'),
A=(SELECT SUM(AMOUNT) FROM TABLE1 WHERE TYPE ='A')
FROM TABLE1 A INNER JOIN TABLE2 B ON A.STAFF_NO=B.STAFF_NO group by B.code
我的错误:SS1和SS2的 'O' 和 'A' 具有相同的值。
CODE HEADCOUNT O A
SS1 2 300 55
SS2 3 300 55
结果我应该得到:
CODE HEADCOUNT O A
SS1 2 300 55
SS2 3 170 300