0
我在SQL Server 2012中两个表结构如下:批量更新存储过程与选择,并加入在where子句
customer
- internalId
- listingStatus
- inactive
membership
- custIntneralId
- regDate
这里是我使用SELECT语句:
USE [dbOne]
SELECT DISTINCT(t1.internalId)
FROM customer AS t1
INNER JOIN membership AS t2 ON t1.internalId = t2.custInternalId
WHERE t1.internalId = t2.custInternalId
AND t1.inactive = 0
AND t1.listingStatus = ''
这里是UPDATE语句,如果我要使用循环按行插入行:
UPDATE customer SET listingStatus = '6' WHERE internalId=custInternalId
因为我婉吨做批量更新而不是逐行,我试图写一个存储过程,我可以触发进行批量更新。我尝试了几种不同的方式来编写它,但一直无法让它们工作。以下是我已经尝试了一个存储过程的例子:
USE [dbOne]
UPDATE customer
SET customer.listingStatus = '6'
FROM customer AS t1
INNER JOIN membership AS t2 ON t1.internalId = t2.custInternalId
WHERE t1.internalId = t2.custInternalId
AND t1.inactive = 0
AND t1.listingStatus = ''
我也试图把select语句的UPDATE语句的WHERE子句中,没有工作里面。我看不到我错过了什么,任何人都可以帮助我?