2013-07-10 67 views
0

我想從今年的pro_price查詢總金額..在sqlite查詢語句中有沒有什麼錯誤getDate()。endWith(getThisYear())?android sqlite特定日期結果的查詢語句

public double SumPriceYear(){ 

Cursor sum = ourDatabase.rawQuery("SELECT SUM(" + Pro_Price + ") FROM "+ TABLE_NAME + " Where " + Pro_Date + " = '" + getDate().endsWith(getThisYear()) + "' ", null); 
if(sum.moveToFirst()) 
{ 
    return sum.getDouble(0); 
} 

return sum.getDouble(0); 

}

+0

Pro_Date列中值的格式是什麼? –

回答

0

你選擇總和應該有它的列名不是值。此外,你不應該比較一個日期到一年。它不會匹配。你需要比較每年。

試試這個:

public double SumPriceYear(){ 

Cursor sum = ourDatabase.rawQuery("SELECT SUM(COLUMN_NAME) FROM "+ TABLE_NAME + " WHERE date(" + Pro_Date + ",'%Y') = '" + getDate().endsWith(getThisYear()) + "' ", null); 
if(sum.moveToFirst()) 
{ 
    return sum.getDouble(0); 
} 

    return sum.getDouble(0); 
} 

我做了修改:

  • SUM(列)
  • 其中date( 「+ Pro_Date +」, '%Y')