【发布时间】:2014-08-06 03:11:34
【问题描述】:
如何在我的存储过程中使用 IF 语句来检查我的临时表是否有行?
我想检查#TempDataTable 是否有行,然后我会根据输出执行两个语句中的任何一个,插入或更新。
我做了以下事情:
BEGIN
SELECT *
INTO #TempDataTable
FROM
(SELECT *
FROM BranchNameTable BT
LEFT JOIN BranchLocationActivate BLA ON BT.loc_id = BLA.loc_id
WHERE BT.Branchloc = 1;) as Q
if(//TempDataTable has 0 rows)
INSERT INTO BranchLocationActivate
VALUES(//my values)
ELSE
UPDATE BranchLocationActivate
SET //My values where //my values
END
如何在我的过程中将它放在我的 select 语句之后??
【问题讨论】:
-
你正在尝试的东西没有意义。临时表可能为空的唯一方法是 BranchNameTable 为空。然而,你然后说如果是这种情况,请将记录添加到 BranchLocationActivate。
-
您是否将临时表用于该 IF 语句之外的任何内容?
标签: sql sql-server stored-procedures