SELECT 
  SQL_CALC_FOUND_ROWS products.product_id, 
  products.amount, 
  descr1.product as product, 
  companies.company as company_name, 
  variation_group_products.group_id AS variation_group_id, 
  products.product_type, 
  products.parent_product_id, 
  cscart_product_review_prepared_data.average_rating average_rating, 
  cscart_product_review_prepared_data.reviews_count product_reviews_count 
FROM 
  cscart_products as products 
  LEFT JOIN cscart_product_descriptions as descr1 ON descr1.product_id = products.product_id 
  AND descr1.lang_code = 'vi' 
  LEFT JOIN cscart_companies AS companies ON companies.company_id = products.company_id 
  INNER JOIN cscart_products_categories as products_categories ON products_categories.product_id = products.product_id 
  INNER JOIN cscart_categories ON cscart_categories.category_id = products_categories.category_id 
  INNER JOIN cscart_product_variation_group_products AS variation_group_products ON variation_group_products.product_id = products.product_id 
  LEFT JOIN cscart_product_review_prepared_data ON cscart_product_review_prepared_data.product_id = products.product_id 
  AND cscart_product_review_prepared_data.storefront_id = 0 
WHERE 
  1 
  AND companies.status IN ('A') 
  AND (
    products.usergroup_ids = '' 
    OR FIND_IN_SET(0, products.usergroup_ids) 
    OR FIND_IN_SET(1, products.usergroup_ids)
  ) 
  AND products.status IN ('A') 
  AND variation_group_products.group_id IN (15563, 17090, 13908, 15564, 15562) 
GROUP BY 
  products.product_id 
ORDER BY 
  NULL asc

Query time 0.00662

JSON explain

{
  "query_block": {
    "select_id": 1,
    "temporary_table": {
      "nested_loop": [
        {
          "table": {
            "table_name": "variation_group_products",
            "access_type": "range",
            "possible_keys": ["PRIMARY", "idx_group_id"],
            "key": "idx_group_id",
            "key_length": "3",
            "used_key_parts": ["group_id"],
            "rows": 12,
            "filtered": 100,
            "index_condition": "variation_group_products.group_id in (15563,17090,13908,15564,15562)"
          }
        },
        {
          "table": {
            "table_name": "products",
            "access_type": "eq_ref",
            "possible_keys": ["PRIMARY", "status"],
            "key": "PRIMARY",
            "key_length": "3",
            "used_key_parts": ["product_id"],
            "ref": ["dev_db.variation_group_products.product_id"],
            "rows": 1,
            "filtered": 51.89157104,
            "attached_condition": "(products.usergroup_ids = '' or find_in_set(0,products.usergroup_ids) or find_in_set(1,products.usergroup_ids)) and products.`status` = 'A'"
          }
        },
        {
          "table": {
            "table_name": "companies",
            "access_type": "eq_ref",
            "possible_keys": ["PRIMARY"],
            "key": "PRIMARY",
            "key_length": "4",
            "used_key_parts": ["company_id"],
            "ref": ["dev_db.products.company_id"],
            "rows": 1,
            "filtered": 100,
            "attached_condition": "companies.`status` = 'A'"
          }
        },
        {
          "table": {
            "table_name": "descr1",
            "access_type": "eq_ref",
            "possible_keys": ["PRIMARY", "product_id"],
            "key": "PRIMARY",
            "key_length": "11",
            "used_key_parts": ["product_id", "lang_code"],
            "ref": ["dev_db.variation_group_products.product_id", "const"],
            "rows": 1,
            "filtered": 100,
            "attached_condition": "trigcond(descr1.lang_code = 'vi')"
          }
        },
        {
          "table": {
            "table_name": "cscart_product_review_prepared_data",
            "access_type": "eq_ref",
            "possible_keys": ["PRIMARY"],
            "key": "PRIMARY",
            "key_length": "7",
            "used_key_parts": ["product_id", "storefront_id"],
            "ref": ["dev_db.variation_group_products.product_id", "const"],
            "rows": 1,
            "filtered": 100
          }
        },
        {
          "table": {
            "table_name": "products_categories",
            "access_type": "ref",
            "possible_keys": ["PRIMARY", "pt"],
            "key": "pt",
            "key_length": "3",
            "used_key_parts": ["product_id"],
            "ref": ["dev_db.variation_group_products.product_id"],
            "rows": 1,
            "filtered": 100
          }
        },
        {
          "table": {
            "table_name": "cscart_categories",
            "access_type": "eq_ref",
            "possible_keys": ["PRIMARY", "p_category_id"],
            "key": "PRIMARY",
            "key_length": "3",
            "used_key_parts": ["category_id"],
            "ref": ["dev_db.products_categories.category_id"],
            "rows": 1,
            "filtered": 100,
            "using_index": true
          }
        }
      ]
    }
  }
}

Result

product_id amount product company_name variation_group_id product_type parent_product_id average_rating product_reviews_count
22989 996 Mứt Gừng Sấy Dẻo, Gừng Sẻ Huế, Đặc Sản Việt Nam, Quà Việt Nam, Nguyên Liệu Tự Nhiên, Quà Biếu Tết Mộc Truly Huế 13908 V 1582 5.00 27
1582 946 Mứt Gừng Sấy Dẻo, Gừng Sẻ Huế, Đặc Sản Việt Nam, Quà Việt Nam, Nguyên Liệu Tự Nhiên, Quà Biếu Tết Mộc Truly Huế 13908 P 0 5.00 27
33313 0 Tổ Yến Chưng Hạt Sen 2 Size, Tổ Yến Đường Phèn, Lành Mạnh, Giàu Dinh Dưỡng, Nguyên Liệu Tự Nhiên, Quà Tặng Sức Khỏe Mộc Truly Huế 15562 P 0 5.00 24
33309 0 Tổ Yến Chưng Hạt Sen 2 Size, Tổ Yến Đường Phèn, Lành Mạnh, Giàu Dinh Dưỡng, Nguyên Liệu Tự Nhiên, Quà Tặng Sức Khỏe Mộc Truly Huế 15562 V 33313 5.00 24
33314 999 Hộp Quà Tặng Mộc Truly Huế Set 1, Set Quà Đặc Sản, Quà Tặng Việt, Trà Sen Huế, Tổ Yến, Hạt Sen Sấy, Kẹo Mè Xửng Huế Mộc Truly Huế 15563 V 33310 5.00 14
33310 996 Hộp Quà Tặng Mộc Truly Huế Set 1, Set Quà Đặc Sản, Quà Tặng Việt, Trà Sen Huế, Tổ Yến, Hạt Sen Sấy, Kẹo Mè Xửng Huế Mộc Truly Huế 15563 P 0 5.00 14
33312 997 Hộp Quà Tặng Mộc Truly Huế Set 2, Set Quà Đặc Sản, Quà Tặng Việt, Trà Hoa Sen, Mứt Thanh Trà, Mứt Gừng Huế, Bánh Phục Linh Mộc Truly Huế 15564 P 0 5.00 19
33315 999 Hộp Quà Tặng Mộc Truly Huế Set 2, Set Quà Đặc Sản, Quà Tặng Việt, Trà Hoa Sen, Mứt Thanh Trà, Mứt Gừng Huế, Bánh Phục Linh Mộc Truly Huế 15564 V 33312 5.00 18
47655 983 Hộp Quà Pháp Lam Mộc Truly Hue's 2024, Món Quà Cố Đô, Set Quà Đặc Sản, Quà Việt Nam, Quà Biếu Tết, Quà Tặng Người Nước Ngoài Mộc Truly Huế 17090 P 0 5.00 15
47691 999 Hộp Quà Pháp Lam Mộc Truly Hue's 2024, Món Quà Cố Đô, Set Quà Đặc Sản, Quà Việt Nam, Quà Biếu Tết, Quà Tặng Người Nước Ngoài Mộc Truly Huế 17090 V 47655 5.00 15
47692 999 Hộp Quà Pháp Lam Mộc Truly Hue's 2024, Món Quà Cố Đô, Set Quà Đặc Sản, Quà Việt Nam, Quà Biếu Tết, Quà Tặng Người Nước Ngoài Mộc Truly Huế 17090 V 47655 5.00 15