根据B列从A列中选择

时间:2016-03-14 18:28:22

标签: sql

我有4个表连接在一起,这是该查询的结果,

Name   Year
Erin   2015
Erin   NULL
Erin   NULL
Sarah  2010
Peter  2011

这两列来自两个不同的表。他们都有我能匹配的ID。我如何将其缩小到这个结果,

Name   Year
Erin   2015
Erin   NULL
Erin   NULL

当年= 2015年时,我想要所有的艾琳。

SELECT Name

年份= 2015年时的情况

...

END

我选择的其他列

FROM Table 加入其他4个表

WHERE 东西

我可以在CASE声明之间加入什么。

2 个答案:

答案 0 :(得分:0)

将相同的案例放入where子句:

选择 情况......然后'a'其他'b'结束 来自TABLE 哪里 (情况......然后'a'其他'b'结束)='b' ;

答案 1 :(得分:0)

听起来你想要查看任何名称中至少有一条year = '2015'的记录的所有记录。如果是,那么:

SELECT Name, Year, Other_Columns
FROM Name N
JOIN YEAR Y on Y.ID = N.ID
WHERE N.ID IN (
     SELECT ID
     FROM YEAR
     WHERE YEAR = '2015'
)