Sql 根据另一个表中的记录从一个表中选择记录

Sql 根据另一个表中的记录从一个表中选择记录,sql,sql-server,Sql,Sql Server,这是我遇到的一个问题的简化版本 我有两张桌子: Table1 has two columns (Stuff, YesNo) and Table2 has one column (Stuff) YesNo列中的记录将为1或0 我如何选择表2中的记录,其中表1.YesNo=1中的记录 非常感谢如果我理解正确,这将是您的解决方案: Select Stuff From Table2 Where Exists ( Select 'Y' From Table1 Where

这是我遇到的一个问题的简化版本

我有两张桌子:

Table1 has two columns (Stuff, YesNo) and 
Table2 has one column (Stuff)
YesNo列中的记录将为1或0

我如何选择表2中的记录,其中表1.YesNo=1中的记录


非常感谢

如果我理解正确,这将是您的解决方案:

Select Stuff From Table2
Where Exists (
    Select 'Y'
    From   Table1
    Where  Table1.Stuff = Table2.Stuff
    And    YesNo = 1
)

因为我相信您需要来自两个表的数据,并且您可能希望呈现每个表的唯一字段,这似乎是一个可能的响应。然而,因为我不相信这些东西能准确地代表这种关系。。。您需要量化/调整a.stuff=b.stuff上的
,以便联接包含所有必需的字段

SELECT A.Stuff, B.Stuff, B.YesNo
FROM table1 B
INNER JOIN table2 A
   on A.Stuff = B.Stuff
WHERE B.YesNo = 1

首先阅读关于连接的内容:其次,确定表之间的关系。表1中的STUFF列与表2中的STUFF列相同吗?表是否具有主键/外键关系?
SELECT A.Stuff, B.Stuff, B.YesNo
FROM table1 B
INNER JOIN table2 A
   on A.Stuff = B.Stuff
WHERE B.YesNo = 1
SELECT T2.*
FROM TABLE1 T1
            JOIN TABLE2 T2
                ON T1.Stuff = T2.Stuff
WHERE   T1.YesNo = 1