首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Server :根据TVP表的值删除表中的记录

Server :根据TVP表的值删除表中的记录
EN

Stack Overflow用户
提问于 2015-12-28 11:31:33
回答 2查看 620关注 0票数 1

我有一个PurchaseStationeryDetailsTVP(表值参数) TVP_PurchaseStationeryDetails,,我的问题是->我想要从PurchaseStationeryDetails中删除,这个记录在TVP表中是不可否认的。

代码语言:javascript
复制
declare @TVP_PurchaseStationeryDetails as TVP_PurchaseStationeryDetails

考虑一下,我将数据插入到TVP表中。

代码语言:javascript
复制
DELETE  from PurchaseStationeryDetails
            WHERE PurchaseStationeryMasterId = 1003 AND  PurchaseStationeryDetailsId  IN
                    (SELECT PSD.PurchaseStationeryDetailsId FROM PurchaseStationeryDetails PSD, @TVP_PurchaseStationeryDetails TVP_PSD 
                           WHERE PSD.PurchaseStationeryMasterId = TVP_PSD.PurchaseStationeryMasterId AND PSD.PurchaseStationeryDetailsId  ! = TVP_PSD.PurchaseStationeryDetailsId AND TVP_PSD.PurchaseStationeryDetailsId != 0)

PurchaseStationeryDetails--->PurchaseStationeryDetailsId,PurchaseStationeryMasterId.....etc中的

TVP_PurchaseStationeryDetails--->PurchaseStationeryDetailsId,PurchaseStationeryMasterId.....etc中的

在这里,我想从->表中删除记录104,2

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-12-28 12:07:30

尝试像这样的

代码语言:javascript
复制
delete from PSD

from PurchaseStationeryDetails PSD
where not exists ( 
                  select 1 from  @TVP_PurchaseStationeryDetails TVP_PSD
                  where PSD.PurchaseStationeryMasterId = TVP_PSD.PurchaseStationeryMasterId
                  and isnull(PSD.PurchaseStationeryDetailsId,0)  = TVP_PSD.PurchaseStationeryDetailsId 
                  )

and PSD.PurchaseStationeryMasterId = 1003 
票数 0
EN

Stack Overflow用户

发布于 2015-12-28 13:56:08

尝试使用LeftRight Outer Join

代码语言:javascript
复制
 create table #tvp (id int, val int)

insert into #tvp 
values
(101, 1), (102,  2),(103,2)

create table #purchase (iden int, value int)

insert into #purchase 
values
(101, 1), (102,  2),(103,2),(104,2)


delete p
from #tvp t
right outer join
#purchase p 
on (t.val = p.value and t.id = p.iden)
where t.id is null 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34492723

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档