T-SQLでは、文字列に別の文字列が含まれていないかどうかをどのように確認しますか?
「Oranges Apples」になり得るnvarchar
があります。
たとえば、列does n'tに「Apples」が含まれる場合、更新を行います。
これをどのように行うことができますか?
WHERE NOT (someColumn LIKE '%Apples%')
または、これを使用できます:
WHERE CHARINDEX(N'Apples', someColumn) = 0
どれがより良いパフォーマンスかわからない-あなたはそれをテストする必要があります! :-)
マーク
更新:パフォーマンスは他のソリューションとほぼ同等であるようです(someColumn NOT LIKE '%Apples%')-それは本当にあなたの個人的な好みの問題です。
これをWHERE条件として使用します
WHERE CHARINDEX('Apples', column) = 0
あなたが得た答えは、比較する静的なテキストを想定しています。別の列と比較したい場合(たとえば、2つのテーブルを結合していて、あるテーブルの列が別のテーブルの列の一部であるテーブルを見つけたい場合)、これを行うことができます
WHERE NOT (someColumn LIKE '%' || someOtherColumn || '%')