IN
list は、OR 条件の省略形です。 LIKE
節は NTEXT
で動作します および TEXT
田畑。したがって、これら 2 つのアイデアを組み合わせてこれを行うことができます。
WHERE (
someNtext LIKE N'asd'
OR someNtext LIKE N'asd1'
)
ただし、@marc_s が質問のコメントで示唆したように、NVARCHAR(MAX)
すべての文字列関数がそれで動作するため、優先されます (および TEXT
、 NTEXT
、および IMAGE
データ型は SQL Server 2005 で廃止されました)。 できる 次のようなインライン変換を行います:
WHERE CONVERT(NVARCHAR(MAX), someNtext) IN (N'asd', N'asd1')
しかし、それは LIKE
を使用した場合ほどうまく機能しない可能性があります OR
を含む句
注意: NTEXT
を使用する場合 / NVARCHAR
/ NCHAR
/ XML
常に 文字列リテラルの前に大文字の「N」を付けます。そうしないと、データベースの既定の照合に関連付けられたコード ページでサポートされていない文字のデータが失われる可能性があります。
SQL Server での照合/エンコーディング/Unicode/文字列全般の操作の詳細については、https://Collations.情報/