如何执行if语句来检查列值是否等于用户输入的输入值
我有一个名为Tasks的表和一个名为TaskID的主键。如果我尝试将用户输入的id与TaskID列进行比较,“if”条件将如何?
基本上我试图做(如果(TaskID = 599)插入值
)到目前为止我已尝试过这个:
if ((select TaskID from MyDB.dbo.Tasks where TaskID=599) = 599)
begin
insert into MyDB.dbo.Tasks (Concluded)
Values (1)
end
然而,我不认为它有我想要的结果。它不断创造一项新任务。
答案 0 :(得分:1)
如果您尝试仅检查任务ID exists是否已使用 -
IF EXISTS (SELECT 'x' FROM task WHERE taskid=599)
UPDATE Table1 SET (...) WHERE Column1='SomeValue'
ELSE
INSERT INTO Table1 VALUES (...)
答案 1 :(得分:0)
试试这个
IF EXISTS (SELECT 1 FROM task WHERE taskid=599)
UPDATE MyDB.dbo.Tasks SET concluded = 1 WHERE taskid=599
ELSE
INSERT INTO MyDB.dbo.Tasks (concluded) VALUES (1)