GRDB访问列值

时间:2018-02-06 20:44:14

标签: swift sqlite grdb

我在Swift 4中使用GRDB来访问Double类型值的两列('col1','col2')。

例如:

let value = Double.fetchAll(db,"SELECT col1, col2 FROM table1")

这应该返回一个包含两列double值的表。我想知道是否有一种方法可以按行提取结果而不是逐行迭代它?使用上面我可以得到一个col1数组,但不是两个。

1 个答案:

答案 0 :(得分:1)

如果需要行,则必须逐行迭代。基本逻辑无法逃脱。

如下所示:

// [(Double, Double)]
let pairs = try Row
    .fetchAll(db, "SELECT ...")
    .map { row in
        (row[0] as Double,
         row[1] as Double)
    }