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 = 210 
  LEFT JOIN cscart_seo_names ON cscart_seo_names.object_id = 3690 
  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 = 3690 
  AND (
    companies.status IN ('A') 
    OR cscart_products.company_id = 0
  ) 
GROUP BY 
  cscart_products.product_id

Query time 0.01541

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": 1,
          "filtered": 100
        }
      },
      {
        "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": 1,
          "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_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": 2,
          "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 = 3690"
          },
          "buffer_type": "flat",
          "buffer_size": "126Kb",
          "join_type": "BNL",
          "attached_condition": "trigcond(ps.product_id = 3690)",
          "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
3690 10316_57 P A 289 0 0 500.000 0 0 0 0.00 0 1655312400 1724830036 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:0;s:9:"box_width";i:10;s:10:"box_height";i:7;} 0 N N vi Hộp Quà Tặng Hương Thơm Hoa Nhài (Xà Phòng Thủ Công, Nến Thơm & Nước Hoa) <p>Hoa nhài mang mùi hương ngọt ngào, thanh tao và đầy nữ tính. Hộp Quà Tặng Hương Thơm Hoa Nhài từ Iris Nguyen - Perfumery House là tổng hợp các sản phẩm ướp hương nhài để chăm sóc cho cả cơ thể lẫn tinh thần của bạn.</p> <p>Sau khi nuông chiều làn da với bánh xà phòng hoa nhài, cám gạo sữa non, hãy để mùi hương ngọt ngào của nến Des Blanc xoa dịu những cái chau mày mệt mỏi thường trực trên gương mặt bạn thường ngày. Đừng quên xịt thêm chút nước hoa Jasmine để cơ thể luôn tỏa ra một mùi hương ngọt ngào mà ai cũng sẽ mãi vương vấn.</p> , Jasmine Scented Gift Box Handmade Soap, Scented Candle & Perfume <p>1. Kích thước hộp:</p> <p>- Hộp nhỏ: 15.5 x 10.5 x 7cm</p> <p>- Hộp lớn: 21 x 16 x 10.5cm</p> <p>2. Mỗi hộp quà bao gồm:</p> <p>- Xà phòng hoa nhài, cám gạo sữa non: Các loại dầu ép lạnh (Dầu dừa, dầu olive, bơ hạt mỡ), tinh dầu hoa nhài, bột hoa nhài, bột cám gạo</p> <p>- Nến Des Blanc: Sáp thực vật, tinh dầu thiên nhiên nguyên chất, bấc gỗ</p> <p>- Nước hoa Jasmine: Tinh dầu cam Bergamot, cam ngọt, tiểu hồi cần, hoa nhài, vani, hổ phách, nhục đậu khấu, xạ hương</p> <p>1. Hướng dẫn sử dụng xà phòng:</p> <p>- Chà sát xà phòng với da để tạo bọt</p> <p>- Nhẹ nhàng massage và rửa sạch lại với nước</p> <p>- Nếu da bạn quá nhạy cảm, có thể hòa tan xà phòng với nước trước để sử dụng.</p> <p>2. Các tầng hương của nước hoa:</p> <p>- Đầu: Cam Bergamot - Cam ngọt</p> <p>- Giữa: Tiểu hồi cần - Hoa nhài - Vani</p> <p>- Cuối: Hổ phách - Nhục đậu khấu - Xạ hương</p> Xà Phòng Thủ Công | Nước Hoa Thủ Công | Tinh Dầu Tự Nhiên | Thương Hiệu Nước Hoa Nội Địa | Bao Bì Thân Thiện Môi Trường | Sản Xuất Bền Vững <p>1. Hộp nhỏ</p> <p>- Xà phòng hoa nhài, cám gạo sữa non 100gr</p> <p>- Nến Des Blanc 70gr</p> <p>- Nước hoa Jasmine 10ml</p> <p>2. Hộp lớn</p> <p>- Xà phòng hoa nhài, cám gạo sữa non 100gr</p> <p>- Nến Des Blanc 210gr</p> <p>- Nước hoa Jasmine 30ml</p> <p>Hương hoa nhài mang lại cảm giác thanh tao và trong lành khó tả. Nếu bạn là người yêu thích mùi hương này thì set hoa nhài từ Iris chính là dành cho bạn. Hãy nuông chiều cơ thể và tinh thần bằng những hương thơm đến từ thiên nhiên cực kì an toàn và lành tính.</p> <p>Iris Nguyễn là một nghệ sĩ mùi hương sinh sống và làm việc tại thành phố Hồ Chí Minh. Khi còn là sinh viên khoa Công Nghệ Sinh Học, Iris đã cảm nhận công việc phòng thí nghiệm không phù hợp với mình nên đã quyết định tạo một lối đi riêng.</p> <p>Sau thời gian trải nghiệm nhiều công việc khác nhau, Iris đã tìm thấy đam mê cho chính mình - trở thành một nghệ sĩ mùi hương, một nghề còn rất mới lạ ở Việt Nam. Với mục tiêu tạo ra dòng nước hoa của người Việt, chất lượng tốt với giá cả phải chăng để ai ai cũng có thể sử dụng, Iris Nguyễn - Perfumery House đã được ra đời.</p> <p>Sau khi học và nghiên cứu cách điều chế, Iris đã cho ra mắt 5 hương nước hoa đầu tiên vào năm 2017. Dần dà, Iris Nguyễn - Perfumery House trở thành cái tên quen thuộc tại các sự kiện về hương thơm. Với triết lý mùi hương cấu thành dựa trên tính cách con người, Iris gửi gắm niềm hy vọng rằng mỗi sản phẩm có thể trở thành một người tri kỷ, lắng nghe, thấu hiểu và ở cạnh bên, giúp người dùng có thể tự tin là chính mình và tìm thấy sự bình yên từ bên trong tâm hồn.</p> <p>Đến với Perfumery House, bạn sẽ được khám phá thế giới mùi hương và có thể tự tay điều chế hương nước hoa hay nến thơm cho riêng mình. Ngoài ra, thương hiệu cũng thiết kế hương thơm riêng cho cá nhân, doanh nghiệp. Nếu bạn cũng là một tâm hồn yêu hương thơm, hãy ghé thăm Ngôi Nhà Mùi Hương của Iris Nguyễn - Perfumery House.</p> a:4:{s:17:"rs_brand_producer";a:5:{i:0;s:25:"Sản phẩm mùi hương";i:1;s:95:"Dành trọn đam mê chế tác các sản phẩm thủ công từ thành phần thiên nhiên";i:2;s:56:"Thiết kế mùi hương cho cá nhân & doanh nghiệp";i:3;s:84:"Kiến tạo thế giới mùi hương cho mọi người có thể cùng khám phá";i:4;s:0:"";}s:14:"rs_ingredients";a:5:{i:0;s:11:"Tự nhiên";i:1;s:26:"Không chất bảo quản";i:2;s:14:"Không paraben";i:3;s:0:"";i:4;s:0:"";}s:14:"rs_manufacture";a:5:{i:0;s:11:"Thủ công";i:1;s:41:"Không thử nghiệm trên động vật";i:2;s:0:"";i:3;s:0:"";i:4;s:0:"";}s:17:"rs_certifications";a:5:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";i:3;s:0:"";i:4;s:0:"";}} 1 467500.0000 210M 4440 Iris Nguyen - Perfumery House hop-qua-tang-huong-thom-hoa-nhai-xa-phong-thu-cong-nen-thom-and-nuoc-hoa 110/210 D 0