更新:我们被告知可能不会提供这两个参数的值。在这种情况下,不应同时过滤手机号码和电子邮件地址。
我很难确定我的查询有什么问题。基本上,我有两个变量
@EmlAdd
@MblNum
我想要做的是使用以下规则进行搜索:两个变量中的至少一个必须有一个值如果我只提供电子邮件地址的值,它必须忽略手机号码的过滤器如果我只提供手机号码的值,它必须忽略电子邮件地址的过滤器
到目前为止,我的解决方案发生的情况是:如果提供了 2 个变量的值:如果只有一个变量具有值,则它可以工作:不工作
DECLARE
@EmlAdd AS VARCHAR(100),
@MblNum AS VARCHAR(100)
SET @EmlAdd = ''
SET @MblNum = '5555555'
SELECT
USER_ID,
CONTACT_VALUE
FROM
TBL_CONTACTS
WHERE
(
(CONTACT_VALUE = @MblNum OR @MblNum = '')
OR
(CONTACT_VALUE = @EmlAdd OR @EmlAdd = '')
)
任何帮助将不胜感激。