MySQL存储过程 - 发送可能或可能不是空的变量

时间:2015-09-25 21:31:14

标签: mysql

我发送的变量_activeflag可以是1或0(char,而不是smallint)。如果我为_activeflag发送空白,我想获取所有记录,但是如果我发送1或0,我想要那些activeflags的记录,所以我的where子句是

WHERE(activeflag = _activeflag OR _activeflag ="")

这不正确吗?这条线究竟意味着什么?我从其他一些页面说服自己,我无法发现它就像是一个速记if语句。如果_activeflag不为空,则搜索指定的列。我错了吗?

1 个答案:

答案 0 :(得分:1)

我认为您应该检查IS NULL而不是

WHERE ( activeflag = _activeflag OR _activeflag IS NULL )