Cakephp 不同匹配关联 Table
Cakephp Distinct Matching Associated Table
我正在尝试使用 matching() 函数过滤关联 table 中的数据。
记录被退回,我得到了当前客户购买的所有申请人。但是我仍然得到 Applicants 的重复值。
表 -> 申请人、采购,applicants_purchases 与采购和申请人的 belongsToMany 关联。
这就是我想要做的。
$this->listConditions = ['Purchases.customer_id' => $user['customer_id']];
$query = $this->Applicants->find();
$query->matching('Purchases', function ($q) {
return $q->select(['Applicants.id'])->distinct(['Applicants.id'])->where($this->listConditions);
});
没关系,我把 select & distinct 放在了错误的一端。
当然需要像这样放在 find() 调用中。
$query = $this->Applicants->find()
->select(['Applicants.id'])
->distinct(['Applicants.id']);
$query->matching('Purchases', function ($q) {
return $q->where($this->listConditions);
});
我正在尝试使用 matching() 函数过滤关联 table 中的数据。 记录被退回,我得到了当前客户购买的所有申请人。但是我仍然得到 Applicants 的重复值。
表 -> 申请人、采购,applicants_purchases 与采购和申请人的 belongsToMany 关联。
这就是我想要做的。
$this->listConditions = ['Purchases.customer_id' => $user['customer_id']];
$query = $this->Applicants->find();
$query->matching('Purchases', function ($q) {
return $q->select(['Applicants.id'])->distinct(['Applicants.id'])->where($this->listConditions);
});
没关系,我把 select & distinct 放在了错误的一端。
当然需要像这样放在 find() 调用中。
$query = $this->Applicants->find()
->select(['Applicants.id'])
->distinct(['Applicants.id']);
$query->matching('Purchases', function ($q) {
return $q->where($this->listConditions);
});