我这里有两个表SQL Server查询连接两个表
表1:
表2:
STUDENT |MED_TYPE|REMAINING_MED|ACTIVE
--------|--------|-------------|------
miko |3b |1.0 |1
kite |1b |6.0 |1
kite |2b |9.5 |1
kite |2b |1.0 |1
jun |1b |10.0 |1
arri |1b |8.5 |1
arri |2b |9.5 |1
arri |3b |1.0 |1
imko |1b |6.5 |1
miko |2b |8.0 |1
与此查询:
SELECT
NAME,
SUM(CASE
WHEN MED_TYPE = '1b' AND MED_STATUS = 'APPROVED'
THEN DAYS
ELSE 0
END) AS USED_1b,
SUM(CASE
WHEN MED_TYPE = '2b' AND MED_STATUS = 'APPROVED'
THEN DAYS
ELSE 0
END) AS USED_2b
FROM
table1
GROUP BY
NAME
我得到如下结果:
STUDENT |USED_1b|USED_2b
----------|-------|-------
abe |3.5 |5.0
arri |1.5 |0.5
kiko |0.0 |0.0
chen |4.0 |0.5
heli |0.5 |0.0
miyo |6.5 |5.5
mika |2.0 |1.0
jun |3.0 |3.0
jake |2.5 |2.5
zues |3.5 |2.5
,但我希望得到如下:
NAME | USED_1b | USED_2b | REMAINING_1b | REMAINING_2b
remaining_1b
和remaining_2b
从表2列remaining_med
现身,他们可以与MED类型分类。连接两张表的是姓名和学生。此外,我想检查学生是否活动。如果不活跃,它将不会显示在结果表中。
这将是什么正确的查询?我不知道如何使用连接或联合。我是SQL Server的新手。
顺便说一句,表1和表2和结果只是整个表的一部分。如果我在这里发布所有内容将会太长。
附加预期的输出也在这里 –
什么是remaining_1b和remaining_2b预期的要求? – FreedomPride