我在尝试将 LEFT() 函数与允许用户选择所有值的多值参数一起使用时遇到了一些问题。在我的数据集中,我使用以下代码:
SELECT * FROM TABLE WHERE AccountValue BETWEEN 10000 and 50000
AND CodeValue IN ('',100,LEFT(@Parameter,3))
基本上,应该在矩阵中拉取的结果是所有介于 10000 和 50000 之间的帐户,其代码值为空白、100 或用户在参数中选择的值的左 3 个字符。参数中的值如下:'200 - Finance'、'300 - Admin'、'400 - HR'等。表中code列的值为100、200、300、400等。所以我使用LEFT 函数用于拆分参数的字符串值。如果用户只选择一个参数,这很好用。但是当他们选择多个或全部时,它会弄乱查询的语法,返回错误“左函数需要 2 个参数”。有什么建议么?