SQLite查询问题

时间:2013-01-28 11:09:03

标签: objective-c sql sqlite

我的数据库有3个表,比如

名称(PK_NameId,FK_ContactId,FK_FavId,长度)

与(PK_ContactId)

收藏夹(PK_FavId)

在我的iPhone应用程序中,有各种选项(标准)来搜索名称,因为用户可以选择多个名字,用户可以选择多个联系人,用户可以选择多个收藏夹&用户也可以选择0-10,10-20等长度。用户也可以点击搜索按钮,无需任何标准即可获得所有名称。 我是SQLite&的新手。想要创建一个搜索名称的查询,通过编码考虑上面所有情况而没有if-else条件,这需要花费较少的时间来执行查询。 我知道一个选项来检查选择哪个标准用户&应用if-else条件,但它不太好,所以我想通过查询来处理它。 如果有人知道,请帮助我。

1 个答案:

答案 0 :(得分:0)

我使用以下方式获得解决方案 -

NSString *strQuery;    
strQuery = [NSString stringWithFormat:@"SELECT N.PK_NameId FROM Name N inner join Contact C on C.PK_ContactId = N.FK_ContactId inner join Favourites F on F.PK_FavId = N.FK_FavId where ((1)"];

之后,我检查了每个选择类型(名称,联系人,列表)的空值。将查询附加到原始查询。最后使用我在主查询中的where子句之后打开的右括号完成查询。

strQuery = [NSString stringWithFormat:@"%@)", strQuery];