根据SQL Server 2008中的条件提取数据
这是我的桌子:根据SQL Server 2008中的条件提取数据,sql,database,sql-server-2008,tsql,Sql,Database,Sql Server 2008,Tsql,这是我的桌子: ProposalNo itemtypenum Dummy 2015005005 427 1 2015006003 478 1 2015006003 2243 0 2015006003 2249 0 2015006004 470 1 2015006005 2247 0 2015006005 2298 0 2015006007 478
ProposalNo itemtypenum Dummy
2015005005 427 1
2015006003 478 1
2015006003 2243 0
2015006003 2249 0
2015006004 470 1
2015006005 2247 0
2015006005 2298 0
2015006007 478 1
2015006008 471 1
2015006008 2245 0
我需要结果
ProposalNo itemtypenum Dummy
2015005005 427 1
2015006003 478 1
2015006003 2243 0
2015006003 2249 0
2015006004 470 1
2015006007 478 1
2015006008 471 1
增强了前面的逻辑,当有<代码>提议> <代码> >代码>哑=1 < /代码>和ItTimeNeNUM=478,然后只考虑具有“代码>虚设=0 < /代码>的行,否则忽略表中的行。< /P> < P>一种方式(有几个):
你的样本数据和你的规则看起来不一致。我从用户那里得到了数据,根据他们的请求,情况I:首先我需要检查提案号不应该是NULL和DUME=1,如果我有记录,那么我只需要考虑假0的记录作为提案号的一个集合。案例二:对于这些提案No: 2015006005,不要有哑=1,所以我不应该考虑。我们可以看看你尝试过的代码,或者你只是来作为一个代码为你服务?“性能”标签如何应用于您的声明?(你没有包括一个问题)谢谢你,斯图尔特。。它的工作:)增强了先前的逻辑,当有一个建议号为哑=1和ItMeTyeNeNoM=478时,只考虑具有哑=0的行,否则忽略表中的行。
SELECT t1.ProposalNo, t1.itemtypenum, t1.Dummy
FROM table t1
WHERE t1.ProposalNo IN (SELECT ProposalNo FROM table WHERE Dummy = 1)