1

更新クエリをすばやく作成する方法が必要です

UPDATE Content
SET Status = 1
WHERE Id in (SELECT userId from [User] where Location = 'US')

このクエリ自体では、SET Status = 0 WHERE Id NOT IN(SELECT userId from [User]) を使用したいと考えています。

基本的に、2 つの更新を 1 つにまとめたいと考えています。

UPDATE Content
SET Status = 1
WHERE Id in (SELECT userId from [User] where Location = 'US')

AND

UPDATE Content
SET Status = 0
WHERE Id NOT in(SELECT userId from [User] where Location = 'US')

、ありがとう

4

1 に答える 1

3

このようなものが動作するはずです:

update c
set Status = case when u.userId is not null then 1 else 0 end
from Content c
  left join [User] u on c.id = u.userId and u.Location = 'US'

各行についてContent、対応する米国ユーザーが存在するかどうかを確認し、それにStatus応じて設定します。

于 2013-09-25T11:10:44.633 に答える