gpt4 book ai didi

php - Cakephp3,如何在cakephp3中使用where子句和inner join?

转载 作者:可可西里 更新时间:2023-11-01 08:10:37 26 4
gpt4 key购买 nike

我正在尝试从产品表中获取评论表。并且我添加了列名称“delete_yn”,这意味着评论是否被删除。我在下面使用了一些蛋糕查询

return $this->Product->find()
->contain(['ProductReview', 'Users'])
->where(['Product.product_code' => $productCode])
->toArray();

结果就是这么好。

但是,现在我想检查评论是否被用户删除并在“del_yn”列中仅显示“n”我添加了这个查询

->andWhere(['Product.ProductReview.del_yn' => 'n'])

在 where 子句之后。

但它不起作用。

请帮助。

最佳答案

不使用 andWhere(['Product.ProductReview.del_yn' => 'n']) ,而是使用 matching (如果 cakephp 3.0.x)或 innerJoinWith() if(cakephp 3.1.x) 并过滤匹配特定关联数据的记录。例如,

return $this->Product->find()
->matching('ProductReview', function ($q) {
return $q->where(['ProductReview.del_yn' => 'n']);
})
->contain(['ProductReview', 'Users'])
->where(['Product.product_code' => $productCode])
->group('Product.id')
->toArray();

关于php - Cakephp3,如何在cakephp3中使用where子句和inner join?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34852198/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com