2012-07-27 69 views
3

選擇和我嘗試執行這樣一個簡單的查詢:警予:使用查詢生成器

$tot = Yii::app()->db->createCommand() 
       ->select('sum(field)') 
       ->from('products') 
       ->where('id = ' . $id) 
       ->queryRow(); 

但是$ TOT我返回空值。

+0

你的代碼看起來不錯,你有雙重檢查你的列名,表名,價值$ ID?你如何檢查$ tot的價值? – 2012-07-27 14:56:02

+0

嘗試'queryScalar()' – dInGd0nG 2012-07-27 18:16:59

+0

使用queryScalar()而不是QueryRow() – crafter 2015-01-24 15:08:01

回答

4

我認爲你需要一個別名添加到您的總和,所以這樣的事情可能工作:

$tot = Yii::app()->db->createCommand() 
    ->select('sum(field) as mySum') 
    ->from('products') 
    ->where('id = ' . $id) 
    ->queryRow(); 
+0

我已經測試過這個工作! – GusDeCooL 2013-06-14 16:07:12