对sqlite查出一组结果,然后对这组结果进行for循环继续查。请问有简单的方法吗?

对sqlite查出一组结果,然后对这组结果进行for循环继续用sqlite在数据库里面查,以此来获取相就的结果内容。下面是我的目前使用的方法。请问有简单的方法吗?

题目来源及自己的思路

相关代码

  • (void)AccordingtoWithBlockReult:(void(^)(NSArray *))BlockResultArray

Radicl:(NSString *)radicl{

NSString * Sql = [NSString stringWithFormat:@"SELECT GROUP_CONCAT(DISTINCT b)FROM tableA WHERE R = '%@ '",r];
NSArray * array1 = nil;
FMResultSet * set =   [self.db executeQuery:Sql];
while ([set next]) {
    array1  = [[set stringForColumn:@"GROUP_CONCAT(DISTINCT b)"] componentsSeparatedByString:@","];
    array1 = [array1 sortedArrayUsingComparator:[self sort]];
}
NSMutableArray * tmpArray = [[NSMutableArray alloc]init];

[array enumerateObjectsUsingBlock:^(id  _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
    NSString * Sql2 = [NSString stringWithFormat:@"SELECT GROUP_CONCAT(DISTINCT name)FROM tableA WHERE  R = '%@ ' and b = '%@'",radicl,obj];
    [self.dbQueue inDatabase:^(FMDatabase *db) {
        NSArray * array2 = nil;
        CollectionCategoryModel * model= nil;
        FMResultSet * set =   [db executeQuery:BuShouSql2];
        while ([set next]) {
            array2  = [[set stringForColumn:@"GROUP_CONCAT(DISTINCT name)"] componentsSeparatedByString:@","];
            model = [CollectionCategoryModel itemWithDataArray:[[NSMutableArray alloc]initWithArray:array2] sectionTitle:[NSString stringWithFormat:@"%@",obj]];
        }
        [tmpArray addObject:model];
    }];
}];
BlockResultArray(tmpArray);

}

[self.dbQueue inDatabase:^(FMDatabase *db) }];

能不能用这个方法将sql1和slq2合并,同时查出array1和array2谢谢啦

阅读 1.8k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进