根据子表中的字段值从DB中选择行

时间:2014-10-22 12:01:04

标签: php mysql database yii

我想根据另一个表中的某些值从表中选择一些行。我有这段代码:

$row = Yii::app()->cre->createCommand()
    ->from('test')
    ->queryAll();

我应该写什么where()子句呢? 说明: 我有test表,以及相关的test2,我有test_id字段和compare_id字段。我需要从test compare_id = 1

获取所有行

2 个答案:

答案 0 :(得分:2)

我认为它应该适用于加入:

$row = Yii::app()->cre->createCommand()
    ->from('test')
    ->join('test2','test2.compare_id = test.test_id')
    ->queryAll();

答案 1 :(得分:0)

你也可以尝试这样的替代方式......

$query = "SELECT t1.* FROM test AS t1 JOIN test2 AS t2 ON
          t1.test_id = t2.compare_id 
          WHERE t2.compare_id = $compareId";  

$row = Yii::app()->cre->createCommand($query)->queryAll();  //or Yii::app()->db->createCommand($query)->queryAll();