Вы немного не правильно подходите к задаче - Вам нужно вывести уникальные значения цветов используемые в элементах категории, а значит Вам нужно создать в модели категорий реляцию которая будет доставать эти данные через связующую таблицу colors. На Yii это могло бы выглядеть приблизительно так:
class Category extends \yii\db\ActiveRecord{
// .....
public function getElements(){
return $this->hasMany(Element::className(), ['category_id' => 'id']);
}
public function getColors(){
return $this->hasMany(Color::className(), ['id' => 'element_id'])
->via('elements')->distinct();
}
// ...