7

null 条件をチェックするより良い方法はどれですか?

AND c.Account IS NOT NULL 
AND c.Account <> ''

また

AND ISNULL(c.Account,'') <> ''

それAccountはaから来ているLEFT JOINので、nullかもしれないと指摘することに気づきました。交差するだけのケースが欲しいのですが、それは本当にINNER JOINハァッを使用する必要があるということですか? facepalms をありがとう ;)

Accountただし、その吐き気を催すような自己実現を見落としているため、NOT NULL 列を作成できない一般的なケースで、これに対する答えを知りたいと思っています。

4

3 に答える 3

2

C.Account <> ''と同等ですISNULL( c.Account, '' ) <> ''

SQL Server はおそらく IsNull を同等の SARG 式に変換するのに十分スマートですが、関数の使用に熱心な場合は、SQL 標準の一部であり、複数の値 (IsNull で 2 つだけではなく) を許可するため、Coalesce を選択することをお勧めします。 ) また、Microsoft が IsNull でこれまでに考案した最も紛らわしい関数名の使用を回避します。

于 2011-02-17T01:25:53.583 に答える