Поиск строки в столбце текста в MySQL

У меня есть mysql таблица, которая имеет столбец, который хранит xml как строку. Я должен найти все кортежи, где xml столбец содержит данную строку 6 символов. Ничто иное не имеет значения - все, что я должен знать, то, если эти 6 символьных строк там или нет.

Таким образом, вероятно, не имеет значения, что текст отформатирован как xml.

Вопрос: как я могу искать в mysql? т.е. SELECT * FROM items WHERE items.xml [contains the text '123456']

Существует ли способ, которым я могу использовать оператор LIKE, чтобы сделать это?

61
задан MPelletier 14 December 2013 в 02:13
поделиться

4 ответа

Вы, вероятно, могли бы использовать предложение LIKE для простого сопоставления строк:

SELECT * FROM items WHERE items.xml LIKE '%123456%'

Если вам нужны более продвинутые функции, взгляните на функции полнотекстового поиска MySQL здесь: http://dev.mysql.com/doc/refman/5.1/en/fulltext-search.html

99
ответ дан 24 November 2019 в 17:13
поделиться

Почему бы не использовать LIKE?

SELECT * FROM items WHERE items.xml LIKE '%123456%'
4
ответ дан 24 November 2019 в 17:13
поделиться

вы имеете в виду:

SELECT * FROM items WHERE items.xml LIKE '%123456%'
2
ответ дан 24 November 2019 в 17:13
поделиться
SELECT * FROM items WHERE `items.xml` LIKE '%123456%'

Оператор % в LIKE означает "здесь может быть что угодно".

6
ответ дан 24 November 2019 в 17:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: