IN
списъкът е само съкратено за ИЛИ условия. LIKE
клаузата работи с NTEXT
и TEXT
полета. Така че можете да комбинирате тези две идеи, за да направите това:
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". Ако не го направите, това може да доведе до загуба на данни за всички знаци, които не се поддържат от кодовата страница, свързана с подреждането по подразбиране на базата данни.
За повече информация относно работата с съпоставки / кодировки / Unicode / низове като цяло в SQL Server, моля, посетете:https://Collations. Информация/