1

以下の SQL コード スニペットがあり、@Customer パラメーターの値を操作して、すべての顧客から売上を選択したいと考えています。SQL Server 2008 R2 でこれを行う方法はありますか? @Customer = '%' を設定しようとしましたが、LIKE 演算子がないため、明らかにうまくいきませんでした。

1 人の顧客だけを選択する必要がある場合もあるため、パラメータを操作したいだけです。WHERE 句で IF/ELSE を使用するようなことはありますか?

DECLARE @Customer varchar(5) = ''

SELECT *
FROM SalesData
WHERE Customer=@Customer
4

3 に答える 3

1

検索を実行する方法がよくわからない

しかし、以下のようなものを試すことができます

SELECT *
FROM SalesData
WHERE Customer like '%' + @Customer + '%'

または

SELECT *
FROM SalesData
WHERE (LEN(@Customer)>0 AND Customer =@Customer)
     OR (LEN(@Customer)=0)

ここではtrim、あなたが常に合格するとは考えていません''。しかし、いつでも使用できますLEN(LTRIM(RTRIM(@Customer)))

于 2013-11-11T17:34:06.997 に答える