2013-07-29 23 views
0

這是我的SQL。我想在Yii中創建一個CDbCriteria如何在yii中使用cdbcriteria從內部連接獲取數據?

select us.user_id,u.clientid from user_session us 
inner join user u on u.id=us.user_id 
where us.auth_token='authtoken0000000001' 

我試過這個,但是給出了錯誤的結果。我還在我的user_session模型中爲此定義了關係related

$criteria = new CDbCriteria; 
$criteria->select = "user_id,user.clientid as client_id"; 
$criteria->condition='auth_token="'.$token.'"'; 
$clientIdarray = UserSession::model()->with('related')->find($criteria); 
+0

爲什麼不使用params來進行數據綁定? – 2013-07-29 13:09:40

+0

我該怎麼做? – unknownbits

+0

你能提供更多細節嗎? 問題是什麼? (與client_id錯誤的結果?)。 請把'與'相關的關係。 –

回答

1
$dataprovider=New CActiveDataProvider('Bla', 
    array(
    'criteria'=>array(  
     'order'=>'id ASC', 
     'with'=>array(
     'user', 
     ), 
    'joinType'=>'INNER JOIN',    
    'condition'=>'user.auth_token = '.$token, 
     ) 
     )); 

只是一個例子,如何做數據提供器初始化。 $criteria->with做你所需要的。 此主題將有所幫助。 http://www.yiiframework.com/doc/guide/1.1/en/database.arr