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

Query time 0.04255

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 = 638"
          },
          "buffer_type": "flat",
          "buffer_size": "18Kb",
          "join_type": "BNL",
          "attached_condition": "trigcond(p.company_id = 638)"
        }
      },
      {
        "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
638 en <p><span style="font-weight:400;">Jaros Candle là câu chuyện khởi nghiệp ở lứa tuổi 17 của Lê Vy và chị gái của mình là Triệu Vy, với những hũ nến thơm thủ công do cả hai tạo nên. Cái tên "Jaros" là sự kết hợp giữa tên tiếng Anh của họ là "Jasmine" và "Rose", đồng thời cũng là hai loại hoa mang sắc thái vô cùng đặc biệt trong thế giới mùi hương. Từ nền tảng mùi hương, thương hiệu đặt ra sứ mệnh cho mình là lan toả hơi ấm, gắn kết trái tim giữa mỗi người trong cộng đồng.</span></p> <p><span style="font-weight:400;">Với triết lý </span><i><span style="font-weight:400;">"Sáng tạo và nghệ thuật cho ngọn nến tỏa hương thơm", </span></i><span style="font-weight:400;">nến thơm tại Jaros Candle ẩn chứa nghệ thuật kết hợp các nốt mùi và hơn hết là sự tận tâm trong từng khâu sản xuất. Để hiện thực hóa mong muốn dùng hương thơm để chăm sóc sức khỏe tinh thần người dùng, Jaros Candle chỉ sử dụng nguồn sáp thực vật đã được kiểm định cùng dầu thơm đạt tiêu chuẩn quốc tế. </span></p> <p><span style="font-weight:400;">Sự xuất hiện trên chương trình Thương vụ bạc tỷ - Shark Tank Việt Nam mùa 5, 2022 là một bước ngoặt thành tựu mà Jaros Candle đạt được. Từ cơ hội to lớn đó, thương hiệu đã và đang không ngừng trau dồi qua từng ngày để sáng tạo thêm nhiều sản phẩm chất lượng tốt hơn, giúp người dùng đạt được sự bình yên trong cuộc sống bộn bề một cách dễ dàng và bền vững. </span></p> A JAROS Candle JAROS Candle 36B Hẻm 2 Đường Phạm Thái Bường Phường 4 TP.Vĩnh Long 86 855 29554 jaroscandle@gmail.com 0915598161 none Y 1671525570 5,6,7 0 N N N 1 0 0 0 0 0 3631879 N N A Y Hoa hồng người bán jaros-candle 5.00 8