iphone - iOS SQLite 求和和检索数据

标签 iphone objective-c ios xcode sqlite

我有一个在我的 iOS 应用程序中创建的 SQLite 数据库。该数据库中存储了一系列数字。我想对整个列求和,并返回要在应用程序中显示的数据。

写入数据库的所有内容都正常工作,但我无法尝试返回汇总数据。任何帮助将不胜感激。

-(void) dataReturn: (NSString *) tableNamed{
    NSString *myData = [NSString stringWithFormat:@"SELECT SUM(column1) AS data1 FROM myDB", tableNamed];

    sqlite3_stmt *statement;

    if(sqlite3_prepare_v2(db, [myData UTF8String], -1, &statement, nil) ==SQLITE_OK){
        while (sqlite3_step(statement) == SQLITE_ROW){

            int *field2 = (int *) sqlite3_column_int(statement, 1);

            NSString *myString =[[NSString alloc] initWithFormat:@"%@", field2];

        }
    }
}

最佳答案

你好,Nathan 调用

[self  dataReturn:@"Bill"]; 

发挥作用

-(void)dataReturn:(NSString *)tableName{

    sqlite3 *database;
    sqlite3_stmt *statement;

    NSString *queryString = [NSString stringWithFormat:@"SELECT SUM(price) AS TOTAL FROM %@", tableName];

    if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK) {

        if(sqlite3_prepare_v2(database, [queryString UTF8String], -1, &statement, nil) == SQLITE_OK){
            while (sqlite3_step(statement) == SQLITE_ROW) {
                    int field1 =  sqlite3_column_int(statement, 0);
                    NSLog(@"The sum is  %d ", field1);
            }
        }
    }
}

将获取您想要的数据。表“Bill”的模式是“CREATE TABLE Bill (price double,quantity INTEGER)”。获取的结果将包含从“0”开始索引的列,因此我们为第一列传递 0。希望你能从中得到一些提示。干杯!

int field1 =  sqlite3_column_int(statement, 0);

关于iphone - iOS SQLite 求和和检索数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6588114/

相关文章:

iPhone socket 程序

ios - 在显示附加到 inputAccessoryView 的 UIMenuController 中隐藏 'select' 、 'selectAll' 、 'paste' ?

iphone - 以流畅的动画显示/隐藏导航栏

iphone - writeToFile 失败 - 如何调试它失败的原因(什么工具)?

iphone - 谷歌在iphone sdk中 checkout ?

ios - NSURLErrorDomain 中的代码是什么意思?

objective-c - cocoa :如何将 NSAttributedString 保存到 JSON

ios - 带有 UIBlurEffect 的表格 View 变得迟钝

ios - 将子层添加到 UICollectionViewCell 时出现意外行为

ios - 以编程方式将方向从横向模式更改为纵向模式 xamarin IOS