2012-05-31 3 views
0

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

Если запись содержит Джона, он будет отображать записи с сортире, Джонсоном, JohnSmith и т.д. джон может быть где угодно в пределах именипоиск в полях mysql

ответ

1
select 
    name_field 
from 
    my_table 
where 
    name_field like '%john%' 

Update: На вопрос

Do вы хотите спросить, что «Как найти, если значение name_field строки 1 соответствует полному или частичному с тем же значением поля из другой строки2 в строкуN?»

Вы ответили "это именно то, что мне нужно".

следующее решение может быть полезным для Вас:

select 
t.name_field_id, t.name_field as 'name_value', 
d.name_field_id as 'id_of_dup', d.name_field as 'dup_in' 
from 
my_table t, 
my_table d 
where 
d.name_field != t.name_field 
and d.name_field like concat('%', t.name_field, '%' ) 
order by name_value, dup_in; 
+0

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

+0

@AhmedHosny дублирующих записей или значений столбца? –

+0

возможных дубликатов с сохраненными значениями, он должен выбрать запись john david и запись peter johnsmith –

Смежные вопросы