SELECT 
  cscart_products.*, 
  cscart_product_descriptions.*, 
  MIN(
    IF(
      cscart_product_prices.percentage_discount = 0, 
      cscart_product_prices.price, 
      cscart_product_prices.price - (
        cscart_product_prices.price * cscart_product_prices.percentage_discount
      )/ 100
    )
  ) as price, 
  GROUP_CONCAT(
    CASE WHEN (
      cscart_products_categories.link_type = 'M'
    ) THEN CONCAT(
      cscart_products_categories.category_id, 
      'M'
    ) ELSE cscart_products_categories.category_id END 
    ORDER BY 
      cscart_categories.storefront_id IN (0, 1) DESC, 
      (
        cscart_products_categories.link_type = 'M'
      ) DESC, 
      cscart_products_categories.category_position ASC, 
      cscart_products_categories.category_id ASC
  ) as category_ids, 
  GROUP_CONCAT(
    CASE WHEN (
      cscart_products_tag_categories.link_type = 'M'
    ) THEN CONCAT(
      cscart_products_tag_categories.category_id, 
      'M'
    ) ELSE cscart_products_tag_categories.category_id END 
    ORDER BY 
      cscart_categories.storefront_id IN (0, 1) DESC, 
      (
        cscart_products_tag_categories.link_type = 'M'
      ) DESC, 
      cscart_products_tag_categories.category_position ASC, 
      cscart_products_tag_categories.category_id ASC
  ) as category_tag_ids, 
  popularity.total as popularity, 
  companies.company as company_name, 
  cscart_product_sales.amount as sales_amount, 
  cscart_seo_names.name as seo_name, 
  cscart_seo_names.path as seo_path, 
  cscart_discussion.type as discussion_type, 
  cscart_product_review_prepared_data.average_rating average_rating, 
  cscart_product_review_prepared_data.reviews_count product_reviews_count, 
  ps.sold as sold 
FROM 
  cscart_products 
  LEFT JOIN cscart_product_prices ON cscart_product_prices.product_id = cscart_products.product_id 
  AND cscart_product_prices.lower_limit = 1 
  AND cscart_product_prices.usergroup_id IN (0, 0, 1) 
  LEFT JOIN cscart_product_descriptions ON cscart_product_descriptions.product_id = cscart_products.product_id 
  AND cscart_product_descriptions.lang_code = 'vi' 
  LEFT JOIN cscart_companies as companies ON companies.company_id = cscart_products.company_id 
  INNER JOIN cscart_products_categories ON cscart_products_categories.product_id = cscart_products.product_id 
  LEFT JOIN cscart_products_tag_categories ON cscart_products_tag_categories.product_id = cscart_products.product_id 
  INNER JOIN cscart_categories ON cscart_categories.category_id = cscart_products_categories.category_id 
  AND cscart_categories.storefront_id IN (0, 1) 
  AND (
    cscart_categories.usergroup_ids = '' 
    OR FIND_IN_SET(
      0, cscart_categories.usergroup_ids
    ) 
    OR FIND_IN_SET(
      1, cscart_categories.usergroup_ids
    )
  ) 
  AND (
    cscart_products.usergroup_ids = '' 
    OR FIND_IN_SET(
      0, cscart_products.usergroup_ids
    ) 
    OR FIND_IN_SET(
      1, cscart_products.usergroup_ids
    )
  ) 
  AND cscart_categories.status IN ('A', 'H') 
  AND cscart_products.status IN ('A', 'H') 
  LEFT JOIN cscart_product_popularity as popularity ON popularity.product_id = cscart_products.product_id 
  LEFT JOIN cscart_product_sales ON cscart_product_sales.product_id = cscart_products.product_id 
  AND cscart_product_sales.category_id = 215 
  LEFT JOIN cscart_seo_names ON cscart_seo_names.object_id = 4047 
  AND cscart_seo_names.type = 'p' 
  AND cscart_seo_names.dispatch = '' 
  AND cscart_seo_names.lang_code = 'vi' 
  LEFT JOIN cscart_discussion ON cscart_discussion.object_id = cscart_products.product_id 
  AND cscart_discussion.object_type = 'P' 
  LEFT JOIN cscart_product_review_prepared_data ON cscart_product_review_prepared_data.product_id = cscart_products.product_id 
  AND cscart_product_review_prepared_data.storefront_id = 0 
  LEFT JOIN cscart_product_sold ps ON cscart_products.product_id = ps.product_id 
WHERE 
  cscart_products.product_id = 4047 
  AND (
    companies.status IN ('A') 
    OR cscart_products.company_id = 0
  ) 
GROUP BY 
  cscart_products.product_id

Query time 0.02605

JSON explain

{
  "query_block": {
    "select_id": 1,
    "nested_loop": [
      {
        "table": {
          "table_name": "cscart_products",
          "access_type": "const",
          "possible_keys": ["PRIMARY", "status"],
          "key": "PRIMARY",
          "key_length": "3",
          "used_key_parts": ["product_id"],
          "ref": ["const"],
          "rows": 1,
          "filtered": 100
        }
      },
      {
        "table": {
          "table_name": "popularity",
          "access_type": "const",
          "possible_keys": ["PRIMARY", "total"],
          "key": "PRIMARY",
          "key_length": "3",
          "used_key_parts": ["product_id"],
          "ref": ["const"],
          "rows": 1,
          "filtered": 100
        }
      },
      {
        "table": {
          "table_name": "cscart_product_sales",
          "access_type": "const",
          "possible_keys": ["PRIMARY", "pa"],
          "key": "PRIMARY",
          "key_length": "6",
          "used_key_parts": ["category_id", "product_id"],
          "ref": ["const", "const"],
          "rows": 0,
          "filtered": 0,
          "unique_row_not_found": true
        }
      },
      {
        "table": {
          "table_name": "cscart_product_prices",
          "access_type": "ref",
          "possible_keys": [
            "usergroup",
            "product_id",
            "lower_limit",
            "usergroup_id"
          ],
          "key": "product_id",
          "key_length": "3",
          "used_key_parts": ["product_id"],
          "ref": ["const"],
          "rows": 1,
          "filtered": 100,
          "attached_condition": "trigcond(cscart_product_prices.lower_limit = 1 and cscart_product_prices.usergroup_id in (0,0,1))"
        }
      },
      {
        "table": {
          "table_name": "cscart_product_descriptions",
          "access_type": "const",
          "possible_keys": ["PRIMARY", "product_id"],
          "key": "PRIMARY",
          "key_length": "11",
          "used_key_parts": ["product_id", "lang_code"],
          "ref": ["const", "const"],
          "rows": 1,
          "filtered": 100,
          "attached_condition": "trigcond(cscart_product_descriptions.lang_code = 'vi')"
        }
      },
      {
        "table": {
          "table_name": "companies",
          "access_type": "eq_ref",
          "possible_keys": ["PRIMARY"],
          "key": "PRIMARY",
          "key_length": "4",
          "used_key_parts": ["company_id"],
          "ref": ["const"],
          "rows": 1,
          "filtered": 100,
          "attached_condition": "trigcond(companies.`status` = 'A')"
        }
      },
      {
        "table": {
          "table_name": "cscart_products_categories",
          "access_type": "ref",
          "possible_keys": ["PRIMARY", "pt"],
          "key": "pt",
          "key_length": "3",
          "used_key_parts": ["product_id"],
          "ref": ["const"],
          "rows": 2,
          "filtered": 100
        }
      },
      {
        "table": {
          "table_name": "cscart_categories",
          "access_type": "eq_ref",
          "possible_keys": ["PRIMARY", "c_status", "p_category_id"],
          "key": "PRIMARY",
          "key_length": "3",
          "used_key_parts": ["category_id"],
          "ref": ["dev_db.cscart_products_categories.category_id"],
          "rows": 1,
          "filtered": 100,
          "attached_condition": "cscart_categories.storefront_id in (0,1) and (cscart_categories.usergroup_ids = '' or find_in_set(0,cscart_categories.usergroup_ids) or find_in_set(1,cscart_categories.usergroup_ids)) and cscart_categories.`status` in ('A','H')"
        }
      },
      {
        "table": {
          "table_name": "cscart_products_tag_categories",
          "access_type": "ref",
          "possible_keys": ["pt"],
          "key": "pt",
          "key_length": "3",
          "used_key_parts": ["product_id"],
          "ref": ["const"],
          "rows": 6,
          "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` = 'p' and cscart_seo_names.dispatch = '' and cscart_seo_names.lang_code = 'vi')"
        }
      },
      {
        "table": {
          "table_name": "cscart_discussion",
          "access_type": "const",
          "possible_keys": ["object_id"],
          "key": "object_id",
          "key_length": "6",
          "used_key_parts": ["object_id", "object_type"],
          "ref": ["const", "const"],
          "rows": 1,
          "filtered": 100,
          "attached_condition": "trigcond(cscart_discussion.object_type = 'P')"
        }
      },
      {
        "table": {
          "table_name": "cscart_product_review_prepared_data",
          "access_type": "const",
          "possible_keys": ["PRIMARY"],
          "key": "PRIMARY",
          "key_length": "7",
          "used_key_parts": ["product_id", "storefront_id"],
          "ref": ["const", "const"],
          "rows": 1,
          "filtered": 100
        }
      },
      {
        "block-nl-join": {
          "table": {
            "table_name": "<derived2>",
            "access_type": "ALL",
            "rows": 12545,
            "filtered": 100,
            "attached_condition": "ps.product_id = 4047"
          },
          "buffer_type": "flat",
          "buffer_size": "150Kb",
          "join_type": "BNL",
          "attached_condition": "trigcond(ps.product_id = 4047)",
          "materialized": {
            "query_block": {
              "select_id": 2,
              "filesort": {
                "sort_key": "count(cscart_order_details.product_id) desc",
                "temporary_table": {
                  "nested_loop": [
                    {
                      "table": {
                        "table_name": "cscart_order_details",
                        "access_type": "index",
                        "key": "o_k",
                        "key_length": "6",
                        "used_key_parts": ["order_id", "product_id"],
                        "rows": 12545,
                        "filtered": 100,
                        "using_index": true
                      }
                    }
                  ]
                }
              }
            }
          }
        }
      }
    ]
  }
}

Result

product_id product_code product_type status company_id list_price amount weight length width height shipping_freight low_avail_limit timestamp updated_timestamp usergroup_ids is_edp edp_shipping unlimited_download tracking free_shipping zero_price_action is_pbp is_op is_oper is_returnable return_period is_make_to_order make_period avail_since out_of_stock_actions localization min_qty max_qty qty_step list_qty_count tax_ids age_verification age_limit options_type exceptions_type details_layout shipping_params facebook_obj_type parent_product_id buy_now_url is_stock_split_by_warehouses is_fragile lang_code product shortname short_description full_description meta_keywords meta_description search_words page_title age_warning_message promo_text specification special_note punch_line selection chus_note about_brand why_chus purchasing_notice note_from_brand is_sync_seo_url price category_ids category_tag_ids popularity company_name sales_amount seo_name seo_path discussion_type average_rating product_reviews_count sold
4047 10411_10 P A 366 0 999 500.000 0 0 0 0.00 0 1655312400 1726252635 0 N N N B N N N N Y 10 N - 0 N N 0 default a:5:{s:16:"min_items_in_box";i:1;s:16:"max_items_in_box";i:1;s:10:"box_length";i:35;s:9:"box_width";i:15;s:10:"box_height";i:10;} 0 N N vi Lười Len Nhồi Bông Lục Lạc, Đồ Chơi Cho Bé, Đồ Chơi Lục Lạc, Thú Bông Có Lục Lạc, Gấu Ôm Cho Bé, Đồ Chơi Bằng Len <p>Việc giỗ bé ngủ đôi khi cũng thật khó khăn. Hãy trang bị cho bé một chú Lười Len Nhồi Bông Lục Lạc từ The Little Swing để bé ôm và dễ dàng đi vào giấc ngủ.</p> <p>Sản phẩm được làm từ 100% len cotton, mềm mại và an toàn cho da bé. Lười Len Nhồi Bông Lục Lạc từ The Little Swing có thiết kế dễ thương, sẽ bầu bạn cùng bé xuyên suốt năm tháng lớn khôn.</p> , Crochet Sloth Rattle Toy, Toy For Kids, Decorative Toy, Sloth Plush With Bells, Bear Hug For Kids, Woolen Toy Lười Len Nhồi Bông Lục Lạc - The Little Swing | CHUS <p>- Kích thước: 30 x 16cm</p> <p>- Chất liệu: Len cotton, chỉ cotton, nhồi bông polyester</p> <p>- Không giặt bằng máy.</p> <p>- Sản phẩm có thể bị hư hại nếu giặt bằng máy hoặc khi giặt tay quá mạnh.</p> <p>- Dùng miếng bọt biển ẩm để làm sạch vết bẩn.</p> Đồ chơi lục lạc | Đồ móc len | Thú nhồi bông | Vải bông | Thủ công | Vải bông | Quà tặng <p>Cách giặt sạch khi thú bông len bị bẩn:</p> <p>- Hoà bột giặt hoặc xà phòng vào nước để tạo bọt vừa đủ.</p> <p>- Cho thú nhồi bông vào chậu ngâm khoảng 20 phút.</p> <p>- Giặt bằng cách vò nhẹ nhàng bằng tay. Không vắt mạnh để tránh gây biến dạng.</p> <p>- Nếu vết bẩn khó chà sạch, dùng bàn chải răng mềm để chà nhẹ. Không dùng bàn chải thông thường vì sẽ dễ làm tưa sợi cotton.</p> <p>- Sau khi giặt sạch, dùng tay ấn và bóp thú bông để ráo nước. Có thể cho thú bông lên một chiếc khăn dày thấm hút để ráo nước nhanh hơn. Tuyệt đối không vặn để vắt nước.</p> <p>- Phơi khô.</p> <p>The Little Swing ra đời mang đến các sản phẩm thủ công dễ thương, tinh tế, làm từ nguyên liệu cotton thân thiện với môi trường.</p> <p>Mang kinh nghiệm 10 năm từ công việc thiết kế thời trang, chị Trúc Trần - nhà thành lập The Little Swing mong muốn sản phẩm thủ công trong nước sẽ được biết đến nhiều hơn. Từ đôi tay tài hoa của nghệ nhân Việt, The Little Swing làm ra những sản phẩm thú bông ngộ nghĩnh, đáng yêu mà bạn có thể mua làm quà tặng người thân và bạn bè.</p> <p>Với công việc hiện tại, The Little Swing hỗ trợ các hộ gia đình nghèo tại vùng quê Việt Nam có nguồn thu nhập ổn định. Nhờ vậy, các phụ nữ nơi đây có thể tự lập về tài chính, giúp đỡ được gia đình.</p> <p>Sản phẩm của The Little Swing được làm thủ công, sử dụng nguyên liệu thân thiện với môi trường, an toàn cho người sử dụng. Bạn có thể an tâm với chất lượng sản phẩm khi chọn The Little Swing làm quà trao gửi yêu thương cho người thân yêu.</p> a:4:{s:17:"rs_brand_producer";a:5:{i:0;s:29:"Thú nhồi bông thủ công";i:1;s:85:"Niềm đam mê với sản phẩm thủ công, sử dụng chất liệu tự nhiên";i:2;s:80:"Tạo công việc làm cho hộ dân nghèo có nguồn thu nhập ổn định";i:3;s:62:"Tăng giá trị cho sản phẩm thủ công tại Việt Nam";i:4;s:0:"";}s:14:"rs_ingredients";a:5:{i:0;s:59:"Vải bông, giấy, thạch cao, đất sét, màu acrylic";i:1;s:0:"";i:2;s:0:"";i:3;s:0:"";i:4;s:0:"";}s:14:"rs_manufacture";a:5:{i:0;s:11:"Thủ công";i:1;s:0:"";i:2;s:0:"";i:3;s:0:"";i:4;s:0:"";}s:17:"rs_certifications";a:5:{i:0;s:53:"Tiêu chuẩn Châu u EN71 về đồ chơi an toàn";i:1;s:0:"";i:2;s:0:"";i:3;s:0:"";i:4;s:0:"";}} 1 550000.0000 215M,215M,215M,215M,215M,215M,211,211,211,211,211,211 416M,416M,440,440,467,467,512,512,514,514,515,515 13012 The Little Swing luoi-len-nhoi-bong-luc-lac 107/215 D 5.00 2 1