如果我选择设置它们,我想设置一个查询来过滤一些用户变量。
SET @item_number = 12345;
SELECT * FROM table
IF(@item_number IS NOT NULL, item_number = @item_number, NULL)
但根据我的错误,我没有正确地做到这一点。
答案 0 :(得分:0)
这是一个过程吗?或者您是否正在尝试构建一些动态SQL。
如果在proc中,您可以构建动态SQL,这可能是最简单的。
一种可能效率低下的方法(由于试图弄清楚索引是否有助于查询)但很容易理解,可能是: -
SET @item_number = 12345;
SELECT * FROM table WHERE (@item_number IS NULL OR item_number = @item_number);