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

时间:2012-02-07 11:35:49

标签: ios select sqlite

我正在运行一个LIKE语句问题。 情况是:

  1. 我将联系人簿中与该号码相关联的电话号码和姓名保存到应用程序的数据库中。

  2. 然后我通过触发此查询在uitableview中显示此名称...

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

    number1(NSString *),我正在使用的数字格式为(+international country code number)。但是,db中保存的数字可能没有国家/地区代码,并且不带“+”符号前缀。

  3. 所以我的问题是,即使保存在通讯录中的号码不是根据国际电话号码,我如何确保它与号码中的其他数字相匹配?

    任何人都可以建议我解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

以下是您可以做的事情:

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