很抱歉,我无法发布任何代码,但我甚至不知道从哪里开始尝试使用SQLite.swift编写此语句,我已搜索并搜索但未找到任何可能有用的内容:
编辑:(我试图避免使用RAW SQL,但如果没有选项会恢复它)
select date(InvoiceExpDate,'start of month') as month, sum(PaymentAmount)
from PaySchedules group by month
我有一个名为PaySchedules的表,其中包含日期字段(InvoiceExpDate)和数字字段(PaymentAmount)
我很感激任何指针或代码示例。
谢谢!
答案 0 :(得分:0)
由于经过相当长的一段时间没有选项,我会发布,以防万一这是为某人服务的,使用原始sql的答案:
let select = " select date(PaySchedules.InvoiceDate,'start of month') as month, sum(PaySchedules.PaymentAmount) as amount from PaySchedules join contracts on PaySchedules.Contract_ID = Contracts.ID where invoicedate is not null group by month order by month"
do{
let stmt = try db.prepare(select)
for row in stmt{
let tmpMonth = row[0] as! String
var tmpDate = Date()
tmpDate = dateFormatterYYYYMMDD.date(from: tmpMonth)!
let tmpAmount = row[1] as! Int64
let revItemTemp = pnlRevenue() // pnlRevenue Class defined elsewhere
revItemTemp.pnlRev_Month = tmpDate
revItemTemp.pnlRev_Amount = Int(tmpAmount)
revItems.append(revItemTemp) // revItems declared elsewhere as: var revItems: [pnlRevenue] = []
}
}
catch{
//Nothing
}
希望这可以帮助别人!
由于