在yii中为内部查询创建cdbcriteria?

时间:2013-09-25 08:07:35

标签: yii

我想在YII中使用cdbcriteria创建我的查询,使用createCommand创建我的查询。

select count(*) count
from (select id,player_id,goals_scored,if(goals_scored>0,@counter:=@counter+1,@counter:=0)    count from player_stats, (select @counter:=1) b 
where player_id='1000099' and @counter>0 order by id desc) f

如何以YII语法创建正确的SQL查询?

1 个答案:

答案 0 :(得分:1)

为什么你需要CDbCriteria?你可能需要DAO之类的东西:

$count = Yii::app()->db->createCommand("
select count(*) count
from (select id,player_id,goals_scored,if(goals_scored>0,@counter:=@counter+1,@counter:=0)    count from player_stats, (select @counter:=1) b 
where player_id='1000099' and @counter>0 order by id desc) f
")->queryScalar();

通常CDbCriteria与ActiveRecord模型一起使用,但我不知道它在这种特定情况下是如何适用的。如果没有,请显示完整的代码示例。