SELECT `Product`.*, `Groups`.`id` AS `Groups.id`, `Groups`.`group_name` AS `Groups.group_name`, `Groups`.`bitwise` AS `Groups.group_bitwise`, `Groups->product_groups`.`product_id` AS `Groups.product_groups.product_id`, `Groups->product_groups`.`group_id` AS `Groups.product_groups.group_id` FROM ( SELECT `Product`.`id`, `Product`.`name`, `Product`.`ean`, `Product`.`mpn`, `Product`.`sku`, `Product`.`brand`, `Product`.`uniqueId_name`, `Product`.`uniqueId_value`, `Product`.`price`, `Product`.`currency`, `Product`.`min`, `Product`.`max`, `Product`.`mean`, `Product`.`med`, `Product`.`rank`, `Product`.`std`, `Product`.`total_positions`, `Product`.`bitwise`, `Product`.`created_at`, `Product`.`updated_at`, `Product`.`customer_id`, COUNT(DISTINCT('CustomerCompetitorProducts.competitor_id')) AS `ranks` FROM `products` AS `Product` GROUP BY `Product`.`id` LIMIT 0, 50 ) AS `Product` LEFT OUTER JOIN `customer_competitor_scraping_order_products` AS `CustomerCompetitorProducts` ON `Product`.`id` = `CustomerCompetitorProducts`.`product_id` LEFT OUTER JOIN ( `product_groups` AS `Groups->product_groups` INNER JOIN `groups` AS `Groups` ON `Groups`.`id` = `Groups->product_groups`.`group_id` ) ON `Product`.`id` = `Groups->product_groups`.`product_id` AND ((`Groups`.`customer_id` = 1));