Проверьте, не содержит ли столбец список строк

Есть ли способ проверить, не содержит ли столбец список строк? Моя цель — выяснить, есть ли в столбце FileNm какие-либо другие типы ниток, кроме яблока, банана или апельсина.

Это не работает, потому что столбцы по-прежнему будут содержать яблоко, апельсин или банан... логика ошибочна.

SELECT *
FROM dbo.File f
WHERE (CHARINDEX('apple', f.FileNm ) = 0
OR (CHARINDEX('orange', f.FileNm ) = 0
OR (CHARINDEX('banana', f.FileNm ) = 0)

заменить ИЛИ на И?

siggemannen 06.05.2024 21:06

Я думаю, что это не сработает, поскольку он будет искать файл, содержащий яблоко, апельсин и банан, что невозможно. Он будет содержать только один из них, но не все.

ichachan 06.05.2024 21:16

Нет, это не так, попробуйте.

siggemannen 06.05.2024 21:25
ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
0
3
66
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Замените ИЛИ на И.

SELECT *
FROM dbo.File f 
WHERE (CHARINDEX('apple', f.FileNm ) = 0
    AND (CHARINDEX('orange', f.FileNm ) = 0
    AND (CHARINDEX('banana', f.FileNm ) = 0)

Можно было бы и так написать

SELECT *
FROM dbo.File f
WHERE f.FileNm NOT LIKE '%apple%'
    AND f.FileNm NOT LIKE '%orange%'
    AND f.FileNm NOT LIKE '%banana%'

Другие вопросы по теме