このクエリでいくつかの「重複」を取り除くことはできません。
$data = $this->Collection->find('first', array(
'conditions' => array('Collection.id' => $id),
'Collection' => array(
'fields' => array(
'Collection.name'
),
),
'contain' => array(
'Product' => array(
'fields' => array(
'id'
),
'order' => 'lft ASC',
),
'Product.Detail' => array(
'fields' => array(
'product_id', // should occur only once
'image_1_zoom',
'image_1_slide',
'image_1_detail',
'image_1_thumb',
),
))));
詳細はProductに属し、ProducthasManyDetailがあります。私の問題は、同じproduct_idで複数の詳細を取得したくないということです。'group'を試しましたが成功しませんでした。他のフィールドは内容が異なり、「実際の」重複ではないため、DISTINCTは使用できません。
どんなアイデアでも大歓迎です!:)