如何使用一个参数@TAG
,从两个不同的列派生数据。如果表A中的Tag_ID
不存在,则使用表B中的Tag_NUMBER
而不是创建两个单独的存储过程,如果存在Tag_Number
,如何使Tag_ID
成为可选项反之亦然?
答案 0 :(得分:0)
假设结构简单,这里有一个相当简单的方法概述:
CREATE PROCEDURE MyProc
@Tag int
AS
SELECT *
from FirstTable
where Tag_ID = @Tag
IF @@rowcount = 0
SELECT *
from SecondTable
where Tag_Number = @Tag
RETURN
并且,是的,样本数据和首选输出的示例可能表明这不会有效。