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

Query time 0.04099

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 = 818"
          },
          "buffer_type": "flat",
          "buffer_size": "18Kb",
          "join_type": "BNL",
          "attached_condition": "trigcond(p.company_id = 818)"
        }
      },
      {
        "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
818 en <p><span style="font-weight: 400;">Craftoi được thành lập và phát triển xoay quanh việc tìm ra niềm vui khi làm thủ công. Và giống như niềm vui là để lan tỏa, điều Craftoi mong muốn chính là có thể lan tỏa sự phấn khích, hào hứng khi tự mình mày mò làm những trò thủ công độc đáo đến trẻ nhỏ - những mầm non tương lai của đất nước. </span></p> <p><span style="font-weight: 400;">Câu chuyện đằng sau Craftoi đến từ chính việc người sáng lập thương hiệu là một người mẹ của hai cô con gái. Tình yêu thương và quan tâm của bà dành cho con cái thôi thúc cô tạo ra những món đồ chơi thủ công để chúng tránh xa màn hình. Nhưng ý nghĩa quan trọng hơn chính là mang đến cho chúng - cũng như bao đứa trẻ khác cơ hội được tiếp xúc với việc làm thủ công. Thông qua đó phá triển tâm trí, kỹ năng và óc sáng tạo của chính mình. </span></p> <p><span style="font-weight: 400;">Mỗi bộ trò chơi thủ công tại Craftoi có thể không cầu kỳ trong thiết kế, nhưng từng khâu chuẩn bị các tiểu tiết đến lựa chọn nguyên vật liệu đều được chăm chút tỉ mỉ. Đảm bảo mang đến sự an tâm của bậc phụ huynh khi chọn Craftoi và niềm vui, hứng khởi cho trẻ em Việt Nam và cả quốc tế. </span></p> A CRAFTOI CRAFTOI Tháp A 36 Mai Chí Thọ,Phường An Phú, Thành Phố Thủ Đức, HCM 79 769 27091 assistantcraftoivn@gmail.com 0982849806 none Y 1705403382 6,4,7 0 N N N 1 0 0 0 0 0 0 N N A Y Hoa hồng người bán craftoi