2017-02-12 7 views
1

Извините, что я не могу опубликовать какой-либо код, но я даже не знаю, с чего начать пытаться закодировать этот оператор, используя SQLite.swift, я искал и искал, но ничего, что могло бы помочь не найден:Как использовать модификатор даты в начале месяца, используя SQLite.swift

Edit: (Я пытаюсь избежать RAW SQL, но если опции не будет возвращаться к нему)

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

у меня есть таблица с именем PaySchedules, что имеет дату поле (InvoiceExpDate) и поле с номерами (PaymentAmount)

Я был бы признателен любым p маны или образец кода.

Спасибо!

ответ

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 
    } 

Надеется, что это может помочь кому-то!

С благодарностью

 Смежные вопросы

  • Нет связанных вопросов^_^