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

Query time 0.04235

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 = 225"
          },
          "buffer_type": "flat",
          "buffer_size": "18Kb",
          "join_type": "BNL",
          "attached_condition": "trigcond(p.company_id = 225)"
        }
      },
      {
        "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
225 vi <p>Đong đầy tình yêu với Huế, Huyền đã quyết định trở về quê hương, xứ sở để khởi nghiệp sau thời gian dài tích lũy những kinh nghiệm cần thiết. Cô mong muốn gói những ân tình xứ Huế trong các món quà đậm chất Huế, để du khách có thể dễ dàng mang theo cũng như hiểu hơn về văn hóa quê hương mình. Từ mục đích đó, cô đã cho ra đời Mộc Truly Huế vào năm 2019.</p> <p>Với phương châm “giữ gìn tinh hoa ẩm thực Huế và phát triển sản phẩm cổ truyền”, Mộc Truly Huế mang đến các sản phẩm đậm chất Huế như bánh mứt, trà sen, kẹo vừng chất lượng cao. Toàn bộ sản phẩm của thương hiệu đều không sử dụng chất bảo quản hay phẩm màu nên an toàn cho người sử dụng.</p> <p>Để đem đến sản phẩm chuẩn vị Huế, Mộc Truly Huế đã làm việc trực tiếp cùng các nghệ nhân làng nghề. Các món ẩm thực bình dị và mộc mạc, đặc trưng được đóng gói tinh tế với bao bì đẹp mắt đậm chất Huế và thân thiện môi trường, tăng thêm giá trị tinh thần cho sản phẩm. Bao bì của Mộc Truly Huế được lấy cảm hứng từ tranh làng Sình xứ Huế, kết hợp những bức tranh phong cảnh Huế. Bạn sẽ cầm trên tay không chỉ đặc sản thơm ngon của Huế mà cả giá trị văn hóa chứa trong đó.</p> <p>Mộc Truly Huế khát khao nâng tầm giá trị của nông sản Việt Nam, cải thiện chất lượng đời sống của những người nông dân thông qua những sản phẩm của mình. Hơn thế, thương hiệu hy vọng có thể góp một phần nhỏ trong việc duy trì nét đẹp văn hóa và giá trị truyền thống của dân tộc, cũng như gắn kết yêu thương trên mọi miền Tổ quốc và lan tỏa đến bạn bè quốc tế.</p> A Mộc Truly Huế Mộc Truly Huế 66 Lê Duẩn 46 474 19768 moctrulyhue@gmail.com 0794550458 none Y 1626340321 6,4,7 0 N N N 1 0 0 0 0 0 5278656 Y N A Y Hoa hồng người bán moc-truly-hue 4.97 22