2

SQL WHERE 句で条件付きフィルターを設定するにはどうすればよいですか? たとえば、次の手順のパラメーター @ID があります。

SELECT * FROM myTable WHERE Column1 = 'test' AND Column2 = @ID

ただし、@ID = -1 の場合、SQL の最後の部分 (AND Column2 = @ID) を含めたくありません

2 つの個別のクエリを使用して if ステートメントを作成できることはわかっていますが、これは大きなスクリプトであり、同じ問題が何度も発生しているため、いくつかのクエリをほぼ複製するよりも良い方法があることを期待していました。

4

3 に答える 3

1

1 つの選択肢:

SELECT * FROM myTable WHERE Column1 = 'test' AND @ID in (-1,Column2)
于 2013-04-24T15:47:38.770 に答える