SQL Query以另一个查询的结果为条件

时间:2014-04-07 14:34:06

标签: sql sql-server

我正在尝试查询名为“数据”的足球数据表。但我只希望返回给定的' DateKickOff'的数据。我遇到的问题是启动日期存储在一个名为“匹配”的不同表格中。两个表都包含一个名为MatchID的列,因此我可以运行此查询:

SELECT MatchID FROM Match WHERE DateKickOff='10/08/2013'

获取我感兴趣的MatchID列表。然后我希望运行此查询:

SELECT * FROM Data

但仅返回第一个查询结果中出现MatchID的结果。如果有人能告诉我如何去做,我真的很感激。感谢

2 个答案:

答案 0 :(得分:2)

您也可以使用sub-query

来完成此操作
   SELECT * 
   FROM Data
   Where MatchID IN (SELECT MatchID FROM Match WHERE DateKickOff='10/08/2013')

答案 1 :(得分:1)

试试这个:

SELECT d.* FROM Data d INNER JOIN Match m ON m.MatchID = d.MatchID 
WHERE DateKickOff = '10/08/2013'