2016-06-10 55 views
-1

我在我的iOS应用程序上有sqlite表,并且我想总结它的一列中的所有字符串数字。列名是:“算”如何在swift中从sqlite列中总结字符串数组

我写了这个代码来获取数字:

let kiwi = DB.getInstance() 
    let records = kiwi.executeQuery("SELECT * FROM zekrlist") 
    for record in records { 
     let structContact = StructContact() 
     structContact.id = record.column["id"]?.asInt() 
     structContact.count = record.column["count"]?.asString() 
     print(structContact.count) 

打印结果是这样的:

4

2

我想这些数字的总和:

6

任何帮助将不胜感激。

回答

1
let kiwi = DB.getInstance() 
let count:Int = 0 
let records = kiwi.executeQuery("SELECT * FROM zekrlist") 
for record in records { 
    let structContact = StructContact() 
    structContact.id = record.column["id"]?.asInt() 
    structContact.count = record.column["count"]?.asString() 
    count = count + structContact.count.asInt() // Int(structContact.count) 
} 
print(count) 
+0

它给了我这个错误:类型的值 '串' 没有成员 'asInt中' – Alfi

+0

我改变最后一行:数=计+ INT(structContact 。计数)!它的工作很棒!万分感谢 ! – Alfi

+0

确定始终欢迎 –

1

试试这个: -

let records = kiwi.executeQuery("SELECT SUM(columnName) AS resultName FROM tableName") 
var sum = 0 
for record in records 
{ 
    sum += record.column["resultName"]?.asInt() ?? 0 
} 
+0

您可能还想添加swift代码以检索求和结果。 – luk2302

+0

我应该放什么来代替resultName? – Alfi

+0

放下你想要的,并在下面的循环中引用相同的东西。免责声明: - 我没有现在的SQLite环境设置,所以请不要讨厌,如果这不起作用 –

相关问题