SELECT 
  company_descriptions.*, 
  companies.*, 
  cscart_vendor_plan_descriptions.plan, 
  cscart_seo_names.name as seo_name, 
  cscart_seo_names.path as seo_path, 
  CAST(
    AVG(`prd`.`average_rating`) AS DECIMAL(10, 2)
  ) AS average_rating, 
  prd.reviews_count product_reviews_count 
FROM 
  cscart_companies AS companies 
  LEFT JOIN cscart_company_descriptions AS company_descriptions ON company_descriptions.company_id = companies.company_id 
  AND company_descriptions.lang_code = 'vi' 
  LEFT JOIN cscart_vendor_plan_descriptions ON companies.plan_id = cscart_vendor_plan_descriptions.plan_id 
  AND cscart_vendor_plan_descriptions.lang_code = 'vi' 
  LEFT JOIN cscart_seo_names ON cscart_seo_names.object_id = 304 
  AND cscart_seo_names.type = 'm' 
  AND cscart_seo_names.dispatch = '' 
  AND cscart_seo_names.lang_code = 'vi' 
  LEFT JOIN cscart_products p ON p.company_id = companies.company_id 
  LEFT JOIN cscart_product_review_prepared_data prd ON p.product_id = prd.product_id 
WHERE 
  companies.company_id = 304

Query time 0.09306

JSON explain

{
  "query_block": {
    "select_id": 1,
    "const_condition": "1",
    "nested_loop": [
      {
        "table": {
          "table_name": "companies",
          "access_type": "const",
          "possible_keys": ["PRIMARY"],
          "key": "PRIMARY",
          "key_length": "4",
          "used_key_parts": ["company_id"],
          "ref": ["const"],
          "rows": 1,
          "filtered": 100
        }
      },
      {
        "table": {
          "table_name": "company_descriptions",
          "access_type": "const",
          "possible_keys": ["PRIMARY"],
          "key": "PRIMARY",
          "key_length": "10",
          "used_key_parts": ["company_id", "lang_code"],
          "ref": ["const", "const"],
          "rows": 1,
          "filtered": 100
        }
      },
      {
        "table": {
          "table_name": "cscart_vendor_plan_descriptions",
          "access_type": "const",
          "possible_keys": ["PRIMARY"],
          "key": "PRIMARY",
          "key_length": "10",
          "used_key_parts": ["plan_id", "lang_code"],
          "ref": ["const", "const"],
          "rows": 1,
          "filtered": 100
        }
      },
      {
        "table": {
          "table_name": "cscart_seo_names",
          "access_type": "ref",
          "possible_keys": ["PRIMARY", "dispatch"],
          "key": "PRIMARY",
          "key_length": "206",
          "used_key_parts": ["object_id", "type", "dispatch", "lang_code"],
          "ref": ["const", "const", "const", "const"],
          "rows": 1,
          "filtered": 100,
          "attached_condition": "trigcond(cscart_seo_names.`type` = 'm' and cscart_seo_names.dispatch = '' and cscart_seo_names.lang_code = 'vi')"
        }
      },
      {
        "block-nl-join": {
          "table": {
            "table_name": "p",
            "access_type": "ALL",
            "rows": 25270,
            "filtered": 100,
            "attached_condition": "p.company_id = 304"
          },
          "buffer_type": "flat",
          "buffer_size": "18Kb",
          "join_type": "BNL",
          "attached_condition": "trigcond(p.company_id = 304)"
        }
      },
      {
        "table": {
          "table_name": "prd",
          "access_type": "ref",
          "possible_keys": ["PRIMARY"],
          "key": "PRIMARY",
          "key_length": "3",
          "used_key_parts": ["product_id"],
          "ref": ["dev_db.p.product_id"],
          "rows": 562,
          "filtered": 100,
          "attached_condition": "trigcond(trigcond(p.product_id is not null))"
        }
      }
    ]
  }
}

Result

company_id lang_code company_description terms status company company_search address city city_id district_id ward_id state country zipcode email phone url storefront secure_storefront entry_page redirect_customer countries_list timestamp shippings logos request_user_id request_account_name request_account_data tax_number pre_moderation pre_moderation_edit pre_moderation_edit_vendors plan_id suspend_date grace_period_start last_time_suspended last_debt_notification_time paypal_commerce_platform_account_id stripe_connect_account_id stripe_connect_account_type sended_email_notify ghn_shop_id verify show_homepage messenger messenger_flag plan seo_name seo_path average_rating product_reviews_count
304 vi <p>Mang ý nghĩa “Vẻ đẹp từ dừa”, Coboté (Beauté du noix de coco - Coconut beauty) ra đời năm 2017, chuyên cung cấp các sản phẩm chăm sóc cá nhân từ dừa. Hơn thế, thương hiệu hướng tới nâng cao giá trị cây dừa Bến Tre. Với tình yêu bất tận với dừa, cũng như hiểu được giá trị dưỡng ẩm và chữa lành của loài cây này, Coboté đã đầu tư nghiên cứu và thử nghiệm kỹ lưỡng. Từ đó đem đến các sản phẩm lành tính và hiệu quả, phù hợp với mọi lứa tuổi. Mỗi công thức của Coboté là sự kết hợp hoàn hảo của dừa, thảo mộc địa phương và chiết xuất có nguồn gốc thiên nhiên. Bên cạnh đó, từng mẫu sản phẩm được sản xuất theo mẻ nhỏ với sự cẩn trọng và chăm chút tuyệt đối. Do vậy, sản phẩm có sự đồng nhất về chất lượng và hơn cả chứa đựng tình yêu, sự tận tâm của những người làm nên chúng. Hướng đến sự phát triển bền vững, Coboté chỉ sử dụng các nguyên liệu thiên nhiên, không hóa chất độc hại, không thử nghiệm trên động vật và bao bì có thể tái chế. Cùng với đó, thương hiệu cũng vận dụng sáng tạo khoa học công nghệ để nâng cao giá trị tài nguyên bản địa, cũng như tạo môi trường làm việc thân thiện với người dân địa phương.</p> A Cobote Cobote Số 4-5, Lô 7, Chung Cư Giao Long, Ấp Quới Thạnh Đông, Xã Quới Sơn, Huyện Châu Thành, Tỉnh Bến Tre 83 831 28807 acc.cobote@gmail.com 0789 568 789 none Y 1640049247 3,4,5,6,7 0 N N N 1 0 0 0 0 0 0 N N A Y Hoa hồng người bán cobote 4.97 5