数据库
首页 > 数据库> > Yii2:如何编写Mysql查询以使用左连接从两个表中选择记录

Yii2:如何编写Mysql查询以使用左连接从两个表中选择记录

作者:互联网

我有两张桌子,我想参加…即营地和城市.
我已经用PHP编写了这个查询…但是我想要Yii2格式的相同查询…请告诉我如何在yii2中编写这个查询… ??

这是我的查询:

SELECT DISTINCT camps.city_id, camps.state_id, cities.city_name 
    from camps 
    LEFT JOIN cities
    ON cities.state_id = camps.state_id
    WHERE camps.state_id = 5
    AND camps.status = '1'
    ORDER BY cities.city_name ASC

解决方法:

use yii\db\Query;

$query  = new Query(); 
$query->select
                       (['camps.city_id AS City, camps.state_id AS State, cities.city_name AS Name'
                       ]) 
                      ->from('camps')
                      ->join('LEFT JOIN',' cities','cities.state_id = camps.state_id')
                      ->where('camps.state_id=:id',['id'=>5])
                      ->andWhere('camps.status=:no',['no'=>1]);


 $command   = $query->createCommand();
 $result    = $command->queryAll(); 

标签:mysql,yii2,yii2-advanced-app
来源: https://codeday.me/bug/20190609/1205230.html