Поиск конкретного ключевого слова в MYSQL

0

Я почти новичок в mysql.

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

В таблице q16 я ищу способ выбора строк с ключевым словом в столбце "Area_of_concern", независимо от того, сочетается ли он с другими ключевыми словами или нет:

 SELECT * 
 FROM 'q16' 
 WHERE area_of_concern like '%more education is needed%'

Вот пример ввода:

q16_id область, вызывающая озабоченность

1   more education is needed
2   more enforcement, change in strategy
3   change in strategy
4   more education is needed, change in strategy
5   transportation issue, more enforcement, more education is needed

Где я ищу, чтобы получить строки с ключевым словом "требуется больше образования". Поэтому я должен увидеть строку 1, 4,5 на выходе

  • 1
    Пожалуйста, предоставьте (добавьте к вашему вопросу, используя Edit ) некоторые примеры данных и желаемый результат.
  • 0
    Не могли бы вы добавить вход и ожидаемый результат в вашем вопросе?
Показать ещё 3 комментария
Теги:

1 ответ

0

Я думаю, вы должны создать таблицу, в которой у вас есть один столбец для ключевых слов и один столбец, где используются эти ключевые слова: внешний ключ для таблицы q16 в вашем случае.

Так будет работать намного быстрее.

Что касается вашего вопроса, я думаю, что это дубликат этого.

Как искать строки, содержащие подстроку?

Быстрая попытка: попробуйте использовать двойные кавычки вместо одиночных, так как в некоторых системах одиночные кавычки не допускают экранов (специальных символов) внутри них.

  • 0
    Правильно. Это базовая нормализация. Заполнение дискретных данных в произвольные столбцы, которые не обеспечивают целостности, создает медленные и подверженные ошибкам базы данных. Что, если кто-то сделал опечатку в этом ключевом слове в этой свободно редактируемой строке, например?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню