Я хочу написать хранимую процедуру t-sql (aka sproc), которая выбирает 3 столбца из MyTable. Кроме того, я хочу обновить таблицу в том же sproc:
- Я выбираю третье значение из таблицы.
- Если оно равно 'true', я хочу обновить соответствующую запись в таблице до 'false'
Я не был уверен, какой синтаксис мне использовать. Не могли бы вы помочь мне?
ALTER procedure [dbo].[My_PROC]
@ID varchar(10)
AS
BEGIN
declare @Col3 bit;
set @Col3 = select Col3
from dbo.MyTable with (nolock)
where @ID = ID
if @Col3 = 'true'
update dbo.dbo.MyTable set col3 = 'false'
where @ID = ID
select Col1,
Col2,
Col3
from dbo.MyTable table with (nolock) where @ID = ID,
table.Col1,
table.Col2,
@Col3
END
edit: я хочу вернуть оригинал Col3 (не обновленное значение).