Возвращает все строки запроса, в которых значения строки в одном столбце соответствуют значениям строки в другом столбце - PullRequest
0 голосов
/ 24 августа 2018

Я бесконечно искал ответ на эту проблему:

Наша команда использует запрос, который возвращает набор данных с 13 столбцами.Мы хотим сузить результаты, возвращая только те строки, в которых любое строковое значение в столбце «Actual Collection» находится в соседнем столбце «PrvPrComments».Дополнительно мы хотим сделать то же самое для столбцов «Фактический производитель» и «PrvPrComments».Если в PrvPrComments существует строковое значение в фактической коллекции или фактическом производителе, то мы хотим вернуть эту строку, а если она не будет исключена, то ее.

Хитрость в том, что PrvPrComments - это столбец, в котором есть длинные текстовые строки, поэтому запрос должен быть проанализирован, чтобы найти и сопоставить строку.Они также должны быть точными совпадениями, чтобы "Pillow Perfect" и "Pillow" не были одинаковыми.

Вот пример, размещенный ниже.Я хотел бы вернуть строки, которые содержат «ковбой» и «люстра», потому что есть совпадение, но нет других:

Пример данных

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

Спасибо

Ответы [ 2 ]

0 голосов
/ 26 августа 2018

Если данных не так много, вы можете использовать ( как выражение), чтобы вернуть данные,ГДЕ PrvPrComments LIKE '%' + actualCollection + '%'

Но если объем данных велик, а полнотекстовый поиск не будет таким уж полезным, у вас может быть другой столбец в качестве флага и заполнение его во время ВСТАВКИ, (когда actualCollection равен LIKE PrvPrComments, тогда установите флаг в 1).позже вам нужно выполнить запрос к строкам, имеющим флаг 1

0 голосов
/ 24 августа 2018
where '%' + actualCollection + '%' like PrvPrComments
...