2015-05-11 16 views

Odpowiedz

39

Zakładając, że modele są nazwane BaseTwitter i BaseFollower Odpowiednio, to powinien pracować:

$subQuery = BaseFollower::find()->select('id'); 
$query = BaseTwitter::find()->where(['not in', 'id', $subQuery]); 
$models = $query->all(); 
+1

@ arogachew dziękuję za odpowiedź –

+0

Jeśli to pomogło, możesz przejąć/przyjąć odpowiedź. – arogachev

+0

Muszę poczekać 10 minut –

6
// SELECT * FROM (SELECT * FROM `user` WHERE `active` = 1) `activeusers`; 
$subquery = (new \yii\db\Query)->from('user')->where(['active' => true]) 
$query = (new \yii\db\Query)->from(['activeusers' => $subquery]); 

// subquery can also be a string with plain SQL wrapped in parenthesis 
// SELECT * FROM (SELECT * FROM `user` WHERE `active` = 1) `activeusers`; 
$subquery = "(SELECT * FROM `user` WHERE `active` = 1)"; 
$query = (new \yii\db\Query)->from(['activeusers' => $subquery]); 
Powiązane problemy