2017-07-07 45 views
0

相當於查詢作爲搜索過濾不工作在yii2 searchmodel使用時findbysql,所以我想在Yii2寫的「SELECT * FROM challan WHERE id IN (SELECT MAX(id) FROM challan GROUP BY sid)」等效查詢什麼是yii2

回答

0

我已經找到答案花費很多後小時,這裏是

Challan::find()->Where(['challan.id' => Challan::find()->select(['MAX(id)'])->groupBy('sid')]); 
0
$query->andWhere(new Expression('id IN (SELECT MAX(id) FROM challan GROUP BY sid)')); 
+0

我HV嘗試,但發生的錯誤是「SQLSTATE [23000]:完整性約束違規:1052列 'ID' 在IN/ALL/ANY查詢是不明確的 正在執行的SQL是: SELECT COUNT(*)FROM'challan'左加入'學生'開'' challan''sid' ='學生''sid'左加​​入'校園'在'challan'.'campus_id' ='校園'.'id'左加​​入'類'在'challan''''class_id' ='' ()()()()()()()()()()()()()()()()其中id爲IN(SELECT MAX(id)FROM challan GROUP BY sid) –

+0

試試這個:$ query-> andWhere GROUP BY sid)')); – zakrzu

相關問題