1

私は初心者の SQL ユーザー (正式なトレーニングを受けていない、OJT のみ) であり、簡単な更新ステートメントについて支援が必要です。ID を一覧表示できる update ステートメントを書きたいと思います。以下に示すステートメントは、私が現在書いている方法です。理想的には、このステートメントにより、"where plantunitid in (49-57)" のように記述できるようになります。これを行う方法はありますか?提供された支援に感謝します。

update plantfunctiontable set decommissioned=1 where plantunitid in (49,50,51,52,53,54,55,56,57)

4

5 に答える 5

5

これは機能しますか?

update plantfunctiontable set decommissioned=1 where plantunitid  between 49 and 57
于 2009-01-26T19:43:58.640 に答える
2

使用できます

Where plantunitid >= 49 AND plantunitid <= 57

また

Where plantunitid BETWEEN 49 and 57
于 2009-01-26T19:45:21.100 に答える
1

それはそのまま動作するはずです。

または、このようにすることもできます。

Update planfunctiontable set decommissioned = 1 where plantunitid between 49 and 57

範囲が常に連続していると仮定します(1,2,3 ....7,8,9)

于 2009-01-26T19:45:17.780 に答える
1

それがシーケンシャルである場合にのみ、それを使用できます。

UPDATE plantfunctiontable
   SET decommissioned = 1
 WHERE plantunitid BETWEEN 49 AND 57

シーケンシャルでない場合、元のクエリは正常に機能します

UPDATE plantfunctiontable
   SET decommissioned = 1
 WHERE plantunitid IN (49, 50, 51, 52, 53, 54, 55, 56, 57)
于 2009-01-26T19:46:46.183 に答える
0

試す

Update plantfunctiontable
SET decommissioned = 1
WHERE plantunitid >= @startID
AND plantunitid <= @endID

ここで、@startID と @endID はステートメント パラメーターです。それが役立つことを願っています

于 2009-01-26T19:46:15.233 に答える