خوب معادل راهی که شما رفتین، توی Yii هم وجود داره. من خواستم کد رو ساده تر بنویسم :
Yii::app()->createCommand()
->from('table')
->where('name=:name', array(':name'=>'John')
->orWhere(array('and', 'votes=:votes', 'title<>:title'), array(':votes'=>100,':title'=>'Admin'))
->queryRow();
یا حتی به این شکل (برای خوانایی بیشتر، بازش کردم و نوشتم ولی بدیهیه که میشه خلاصه نوشت) :
Yii::app()->createCommand()
->from('table')
->where(
array(
'or',
'name=:name',
array(
'and',
'votes=:votes',
'title<>:title'
),
array(
':votes'=>100,
':title'=>'Admin'
)
),
array(':name'=>'John')
)->queryRow();
لینک برای مطالعه بی شتر (به نظر میرسه شما حتی به اندازه Starter هم مستندات Yii رو نخوندین)