ユーザーがすべての値を選択できる多値パラメーターで 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」など。表のコード列の値は 100、200、300、400 などです。パラメータの文字列値を分割する LEFT 関数。ユーザーが 1 つのパラメーターのみを選択する場合、これは正常に機能します。しかし、複数またはすべてを選択すると、クエリの構文が台無しになり、「左の関数には 2 つの引数が必要です」というエラーが返されます。助言がありますか?