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 = 847 
  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 = 847

Query time 0.03783

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": 25288,
            "filtered": 100,
            "attached_condition": "p.company_id = 847"
          },
          "buffer_type": "flat",
          "buffer_size": "18Kb",
          "join_type": "BNL",
          "attached_condition": "trigcond(p.company_id = 847)"
        }
      },
      {
        "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 business_type 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
847 en <p><span style="font-weight:400;">Niềm đam mê vơi đồ len từ những ngày còn học cấp 3 đã hình thành nên mong muốn sở hữu thương hiệu đồ len cho riêng mình của Mai. Cô hiểu rằng những món đồ thủ công có thể mộc mạc nhưng không hề đơn giản, khi mà từng chi tiết được làm ra đều chứa đựng trái tim và tâm hồn của người làm. Cùng với chồng mình, cả hai mang đến những sản phẩm đồ len thủ công tự mình làm ra với Mai Handmade. </span></p> <p><span style="font-weight:400;">Với Mai Handmade, mỗi sản phẩm của mình không chỉ là một món đồ bình thường mà còn có nhiều giá trị hơn như thế. Bằng sự tỉ mỉ trong từng mũi đan, đường kim chỉ khi khâu ráp đến bước hoàn thiện, sản phẩm được làm ra là món quà ý nghĩa và chân thành để bạn dành tặng cho những người bạn yêu thương. Đó có thể là đường mũi kim, nhưng cũng chính là những mảnh ghép mang hạnh phúc đến cho người được nhận. </span></p> <p><span style="font-weight:400;">Với ý nghĩa đó, Mai Handmadesẽ sẽ giúp bạn tìm được những sản phẩm len móc thủ công đa dạng về thiết kế và tinh xảo trong kỹ thuật mang tình yêu và tâm huyết của người thợ. Còn nếu bạn tìm một nơi cung cấp quà tặng thủ công độc đáo? Chắc chắn bạn sẽ tìm được điều đó với Mai Handmade. </span></p> A Mai handmade Mai handmade 126 đường 79, phường Tân Quy, quân 7, tpHCM 79 778 27481 thuongmaihungphat126@gmail.com 0938694172 none Y 1719567259 6,4,7,5 0 N N N 1 0 0 0 0 0 0 N N A Y Hoa hồng người bán mai-handmade