Я хочу найти SQL-запрос для поиска строк, где field1 не содержит $ x. Как я могу это сделать?
ответ
Что это за поле? Оператор IN не может быть использован с одним полем, но предназначен для использования в подзапросов или с предопределенными списками:
-- subquery
SELECT a FROM x WHERE x.b NOT IN (SELECT b FROM y);
-- predefined list
SELECT a FROM x WHERE x.b NOT IN (1, 2, 3, 6);
Если вы ищете строку, идут для LIKE оператора (но это будет медленно) :
-- Finds all rows where a does not contain "text"
SELECT * FROM x WHERE x.a NOT LIKE '%text%';
Если ограничить его так, чтобы строка, которую вы ищете должна начинаться с данной строкой, он может использовать индексы (если есть индекс по этому полю) и быть достаточно быстро:
-- Finds all rows where a does not start with "text"
SELECT * FROM x WHERE x.a NOT LIKE 'text%';
Что такое x.b? ваши письма очень сбивают с толку. Я рекомендую использовать таблицу или поле. – Whitecat 2015-08-24 21:10:25
SELECT * FROM table WHERE field1 NOT LIKE '%$x%';
(Убедитесь, что вы убегаете $ X правильно заранее, чтобы избежать инъекции SQL)
Edit: NOT IN
делает что-то немного по-другому - Ваш вопрос не совсем ясно, так выбрать, какой из них использовать. LIKE 'xxx%'
может использовать индекс. LIKE '%xxx'
или LIKE '%xxx%'
не может.
Что считается правильным? Я знаю, что с обычными строками вы должны избегать нескольких вещей, но у LIKE есть дополнительные специальные символы. – 2012-05-16 15:01:47
- 1. SQL Query Где поле НЕ содержит числовое значение
- 2. Query возвращает поле, которое не содержит данных
- 3. SQL/Criteria Query СОДЕРЖИТ ВСЕ?
- 4. выберите, где поле содержит более двух не дублированных записей sql
- 5. Query posts, где поле повторителя не пусто
- 6. Sql Где содержит текстовое поле skillevel и skillname
- 7. Поле таблицы обновления SQL x, где поле y равно z
- 8. Уникальный статус, где x = y mysql query
- 9. Выбор данных, где поле содержит возможное значение
- 10. Linq Query using Содержит и не содержит
- 11. CouchDB выбрать все где поле содержит значение
- 12. sql query: Если поле является префиксом ключа
- 13. SQL Server SELECT, где любой столбец содержит «x»
- 14. SELECT QUERY в поле, которое содержит список
- 15. SQL Query не работает правильно, где пункт
- 16. Где я иду не так? SQL Query
- 17. sql query содержит определенные слова выбранного столбца
- 18. basic sql query - где prefix =
- 19. SQL Query - Где я ошибаюсь?
- 20. Linq Query Где() SQL% эквивалент
- 21. поле SQL Query же ID
- 22. SQL-запрос, где SUM содержит где положение
- 23. SQL Где String Содержит числа
- 24. Laravel Eloquent где поле X или нуль
- 25. Импортировать столбец CSV, где заголовок содержит X?
- 26. Запись счетчика, где столбец содержит char (x)
- 27. запрос, где поле содержит 2 t's
- 28. SQL Select Где не включает только X
- 29. Laravel Query Builder ГДЕ НЕ
- 30. Подсчитайте записи, где поле не равно значению X
Могу ли я использовать C ONTAINS() (sql), чтобы сделать ту же проверку? – Kate 2012-06-14 10:10:10