2017-02-12 16 views
1

對不起,我不能發佈任何代碼,但我甚至不知道從哪裏開始嘗試使用SQLite.swift編碼此語句,我已經搜索和搜查,但沒有發現任何可以幫助:如何使用「月初」SQLite日期修改器使用SQLite.swift

編輯:(我試圖避免RAW SQL,但如果沒有選將恢復到它)

select date(InvoiceExpDate,'start of month') as month, sum(PaymentAmount) 
from PaySchedules group by month 

我有了一個日期的表名爲PaySchedules字段(InvoiceExpDate)和一個數字字段(PaymentAmount)

我將不勝感激任何p ointers或代碼示例。

謝謝!

回答

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 
    } 

希望這可以幫助別人!

謝謝

相關問題