Запрос точного соответствия строки в столбце с текстовыми полями (более одной строки) - PullRequest
0 голосов
/ 28 июня 2011

В моей таблице базы данных у меня есть поле "описание", которое является текстовым полем. он содержит такие значения, как:

This bracelet is composed of round diamond surrounded by milgrain detailing. Its secure setting prevents it from twisting and ensures it will sit impeccably on her wrist.


This stylish design is the perfect accessory for the day or evening. Akoya cultured pearls are lined up by a string of bezel-set round diamond.

Я хочу запросить столбцы, которые содержат точное слово «ромб»

когда я запрашиваю как select description from tproduct where description like '%diamond%' это дает мне результат, но работает как шаблонный запрос

, где я хочу точное совпадение для "алмаза"

Я сделал как выберите description from tproduct where description ='diamond' Но это не дает никакого результата

Пожалуйста, скажите мне, как запросить это.

Спасибо Роми

Ответы [ 2 ]

0 голосов
/ 07 июля 2015
SELECT .... WHERE ' ' + REPLACE(description,'.','') + ' ' LIKE '% diamond %'

Это сработает, если ваше предложение начинается и / или заканчивается 'diamond'.

0 голосов
/ 28 июня 2011

Один простой способ - поставить пробел вокруг слова в вашем запросе:

SELECT ... WHERE description LIKE '% diamond %';

Однако это не очень хорошо работает, если ваше предложение оканчивается на «алмаз».

Для чего-то гораздо более сложного вам действительно нужно использовать какую-то полнотекстовую индексацию, с которой у меня нет опыта в MySQL.

...