假设我有以下表格 Person table
和personStatus table
。如何选择他们的状态只在一个集合中的记录?
declare @Persons table
(PersonId int)
insert into @Persons select 10
insert into @Persons select 11
insert into @Persons select 12
insert into @Persons select 13
insert into @Persons select 14
declare @PersonStatus table
(id int,statuss int)
insert into @PersonStatus (id,statuss) values(14,4)
insert into @PersonStatus (id,statuss) values(10,0)
insert into @PersonStatus (id,statuss) values(10,0)
insert into @PersonStatus (id,statuss) values(11,1)
insert into @PersonStatus (id,statuss) values(10,1)
insert into @PersonStatus (id,statuss) values(11,2)
insert into @PersonStatus (id,statuss) values(12,0)
insert into @PersonStatus (id,statuss) values(12,1)
insert into @PersonStatus (id,statuss) values(12,2)
insert into @PersonStatus (id,statuss) values(13,1)
insert into @PersonStatus (id,statuss) values(13,3)
现在我想找到的人ID的他们的状态都只是在这个集合{0,1,2} 结果是---“10,11,12
怎么做?
如果你计划你的 “限制” 的标准是动态的(或参数),检查出我问一会儿回来的问题:http://stackoverflow.com/questions/7492699/how-can-i-structure-a-query-to-give-me-only-the-rows-that-match-all-values-in-a。除了我的输入是限制集的CSV字符串外,它和您的一样。 – Gibron 2013-03-28 07:28:05