Использование оператора LIKE в SQLite 3 из Objective-C - PullRequest
0 голосов
/ 07 февраля 2012

Я работаю с одной проблемой LIKE.Ситуация такова:

  1. Я сохраняю номер телефона и имя, связанное с этим номером, из книги контактов в базу данных приложения.

  2. ЗатемЯ отображаю это имя в uitableview, запустив этот запрос ...

    NSString  *sqlTemp =[NSString stringWithFormat:@"select name from phoneData where number like %'%@'%",number1];
    

    number1 равен (NSString *), число, которое я использую, отформатировано так: (+international country code number).Однако число, сохраненное в БД, может быть без кода страны и без префикса с символом "+".

Поэтому мой вопрос заключается в том, что даже если номер, сохраненный в книге контактов, не соответствует международному номеру телефона, как я могу убедиться, что он совпадает с другими цифрами в номере?

Может кто-нибудь предложить мне какое-нибудь решение этого вопроса?

1 Ответ

1 голос
/ 07 февраля 2012

Вот что вы можете сделать:

NSRange range = NSMakeRange (3, [number1 length] - 3);
NSString *noPrefixNumber = [number1 substringWithRange:range];
NSString  *sqlTemp =[NSString  stringWithFormat:@"select name from phoneData where number like %'%@'%",noPrefixNumber ];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...