2

ストアド プロシージャといくつかのブール変数 ( Bit) があります。特定の変数が False の場合
にステートメントを入れたい。WHERE

私はこのようなことができることを知っています:

IF (@myBoolean = 1)
BEGIN
SELECT * FROM myTable
END
ELSE
SELECT * FROM myTable WHERE myTable.Foo = 'Bar'

WHEREステートメントをオプションにする方法はありますか? ブール変数が非常に多いため、可能性ごとに異なるクエリを使用したくありません。
これは私が念頭に置いていることです(機能しないことはわかっています):

SELECT * FROM myTable 
CASE WHEN @myBoolean = 0 
THEN WHERE myTable.Foo = 'Bar'
ELSE --Do nothing
4

1 に答える 1

3
SELECT * FROM myTable
where ( @myboolean = 1 and foo = 'bar' ) or @myboolean = 0
于 2013-04-30T18:01:27.250 に答える