2013-10-03 1 views
0

У меня есть база данных телефонных номеров. Есть 2 стола; TEL_PREFIX & ПОДПИСКА.Строка поиска в таблице DB по префиксу

TEL_PREFIX имеет столбец PREFIX и SUBSCRIBER имеет номер столбца NUMBER.

отношение между множеством между SUBSCRIBER и TEL_PREFIX (TEL_PREFIX имеет много ПОДПИСЧИКОВ).

Взаимосвязь PREFIX с NUMBER генерирует реальный номер телефона абонента.

Пример: PREFIX=011442 и NUMBER=3452 с соотношением между этими 2 записями, будут генерировать реальное число 0114423452

мой вопрос:

У меня есть полное число в качестве входных данных (например: 0114443452), и нет записи в таблице SUBSCRIBER с номером 3452, и я хочу, чтобы PREFIX записывал этот дескриптор в этот номер.

P.S: длина префикса не фиксирована.

ответ

0

Наконец-то я нашел ответ. я использовал LOCATE и мой запрос будет:

select * from tel_prefix 
where locate(tel_prefix.prefix, phone) > 0 

где phone это мой вклад.

Есть ли у вас какие-либо комментарии по поводу использования LOCATE.

+1

Или 'POSITION()'. –