快速sqlite计数+始终返回0

时间:2019-03-21 14:02:47

标签: swift sqlite

我在将SQlite for Swift与COUNTWHERE结合使用时遇到问题。

我的代码:

let stmtString = "SELECT COUNT(*) FROM Items WHERE codestring LIKE '%\(code)%'"    
let stmt = try self.connection?.prepare("\(stmtString)")

if let stmt = stmt {
    for row in stmt {
        print(row)
    }
}

结果包含1个值(应有),但为0。 SELECT COUNT(*) FROM Items""SELECT * FROM Items WHERE codestring LIKE '%\(code)%'"都可以正常工作,但是我不想在我的代码中对其进行计算,以期获得更好的性能。我在做什么错了?

2 个答案:

答案 0 :(得分:0)

因此,表中存在的项目无法确认您编写的规则:

val a = A() val b = B() a.foo() // error: unresolved reference: foo b.foo() // error: unresolved reference: foo 仔细检查

简单的codestring LIKE '%\(code)%'应该可以工作。

答案 1 :(得分:0)

对于聚合函数see the doc,应使用scalar而不是prepare

let stmt = try self.connection?.scalar("\(stmtString)")
相关问题