Ios 在Objective-C的SQLite 3中使用LIKE语句

Ios 在Objective-C的SQLite 3中使用LIKE语句,ios,select,sqlite,Ios,Select,Sqlite,我正在运行一个类似于的语句问题。 情况是: 我正在将与该号码关联的电话号码和姓名从通讯录保存到应用程序的数据库中 然后我通过启动此查询在uitableview中显示此名称 NSString *sqlTemp =[NSString stringWithFormat:@"select name from phoneData where number like %'%@'%",number1]; number1是(NSString*),我使用的数字格式如下(+国际国家代码编号)。但是,保存在db中

我正在运行一个类似于的语句问题。 情况是:

  • 我正在将与该号码关联的电话号码和姓名从通讯录保存到应用程序的数据库中

  • 然后我通过启动此查询在uitableview中显示此名称

    NSString  *sqlTemp =[NSString stringWithFormat:@"select name from phoneData where number like %'%@'%",number1];
    
    number1
    (NSString*)
    ,我使用的数字格式如下
    (+国际国家代码编号)
    。但是,保存在db中的数字可能没有国家代码,也没有前缀“
    +
    ”符号

  • 所以我的问题是,即使通讯录中储存的号码与国际电话号码不符,我如何确保它与号码中的其他数字匹配


    有人能给我一些解决方法吗?

    以下是您可以做的:

    NSRange range = NSMakeRange (3, [number1 length] - 3);
    NSString *noPrefixNumber = [number1 substringWithRange:range];
    NSString  *sqlTemp =[NSString  stringWithFormat:@"select name from phoneData where number like %'%@'%",noPrefixNumber ];
    

    您的答案包括语法无效的代码。看起来好像有一行被完全省略了。请编辑您的答案以修复此问题。Thnx用于您的回复,但这仅显示不符合国际代码的名称。