我有一个看起来像这样的条件表:
Conditions
- 条件ID
- 映射ID
- 变量ID
- 比较变量 ID
- 条件运算符(可以是 == 或 <> )
- 连接运算符(可以是 && 或 || )
- 连词令
现在我有一个 SP,我想根据 MappingID 实现这些条件。
如果选择了 MappingID,则应在我的 SP 发生任何事情之前检查所有映射条件。
SELECT *
FROM Conditions
WHERE MappingID = @MappingID
ORDER BY ConjunctionOrder
例如,如果某MappingID
个人在表中有三行,Conditions
那么:
IF VARIABLEID CONDITIONOPERATOR COMPARETOVARIABLEID CONJUNCTIONOPERATOR --row1
VARIABLEID CONDITIONOPERATOR COMPARETOVARIABLEID CONJUNCTIONOPERATOR --row2
VARIABLEID CONDITIONOPERATOR COMPARETOVARIABLEID --row3 (ignore ConjunctionOperator for last row)
BEGIN
--my code goes here
END
ELSE
BEGIN
--my code here
END
我想知道如何实现 IF 语句。