-1

私は1つのテーブルtable1と選択クエリを持っています

select col1 from table1 where id <= 10;

同じ記録を更新したい

update table1 set col2 = 'some value' where id < 10;

両方の操作を1つのクエリで実行し、選択した結果も取得して使用できるようにしたい。

どうやってやるの?

4

3 に答える 3

0

更新する必要はありません。 useCASEステートメントです。

SELECT col2 = CASE WHEN id<=10 THEN 'some value' ELSE col1 END
FROM table1
于 2013-10-17T05:21:47.543 に答える
0

更新された vlaue を取得するには、OUTPUTを使用してこの SQL クエリを試してください。

UPDATE persons  
SET LastName = 'test'
OUTPUT Inserted.LastName
where id<10;

更新後に古い値が必要な場合:

UPDATE persons  
SET LastName = 'test'
OUTPUT DELETED.LastName
where id<10;

デモ

于 2013-10-17T05:34:36.443 に答える