Yii2:如何使用Query Builder连接表?

时间:2017-08-15 12:36:09

标签: join yii2 yii2-advanced-app query-builder

我使用Yii2框架作为一个非常基本的股票软件。我有两张非常基本的股票软件表:

$data = "I am a happy man with 20 kids";
if (preg_match('/^(?=.*\bI\b)(?=.*\bam\b)(?=.*\bhappy\b)(?=.*\bwith\b)(?=.*\b2\b)(?=.*\bkids\b)/i', $data)) {
    echo 'match';
} else {
    echo 'not match';
}

产品表包含超市的所有产品。 当超市购买产品时,它会在移动表中注册。

我想在 index.php视图中显示当前股票的网格。我想有一个 actionIndex函数来获取每个产品的总数。

基本上我想这样做:

products = (id_product, name)
movements = (id_movement, quantity, date)

使用Gii Code Generator,我为产品制作了CRUD,为动作制作了CRUD。

首先,我需要从数据库中获取产品和动作。没有Yii,我可以进行简单的JOIN查询。但我不知道如何使用Yii。最好的方法是什么?我想使用查询构建器。

我发现了question,但我没有为我工作。而这documentation但我真的不明白。

1 个答案:

答案 0 :(得分:1)

您可以使用innerJoin或类似功能

    $result=    (new Query())
        ->select('table1.col1, table1.col2,,,, table2.co1, table2.col2 ...')
        ->from('products ')
        ->innerJoin('movements', 'product.key= movements.key');

http://www.yiiframework.com/doc-2.0/guide-db-query-builder.html