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, 
  popularity.total as popularity, 
  IF(
    shared_prices.product_id IS NOT NULL, 
    MIN(
      IF(
        shared_prices.percentage_discount = 0, 
        shared_prices.price, 
        shared_prices.price - (
          shared_prices.price * shared_prices.percentage_discount
        )/ 100
      )
    ), 
    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, 
  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 
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 = 'en' 
  LEFT JOIN cscart_ult_product_prices shared_prices ON shared_prices.product_id = cscart_products.product_id 
  AND shared_prices.company_id = 1 
  AND shared_prices.lower_limit = 1 
  AND shared_prices.usergroup_id IN (0, 0, 1) 
  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 
  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 = 1 
  LEFT JOIN cscart_seo_names ON cscart_seo_names.object_id = 78 
  AND cscart_seo_names.type = 'p' 
  AND cscart_seo_names.dispatch = '' 
  AND cscart_seo_names.lang_code = 'en' 
  AND cscart_seo_names.company_id = 1 
  LEFT JOIN cscart_discussion ON cscart_discussion.object_id = cscart_products.product_id 
  AND cscart_discussion.object_type = 'P' 
  AND cscart_discussion.company_id = 1 
  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 
WHERE 
  cscart_products.product_id = 78 
  AND (
    companies.status IN ('A') 
    OR cscart_products.company_id = 0
  ) 
GROUP BY 
  cscart_products.product_id

Query time 0.00144

JSON explain

{
  "query_block": {
    "select_id": 1,
    "table": {
      "table_name": "shared_prices",
      "access_type": "system",
      "possible_keys": [
        "usergroup",
        "product_id",
        "company_id",
        "lower_limit",
        "usergroup_id"
      ],
      "rows": 0,
      "filtered": 0,
      "const_row_not_found": true
    },
    "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": "companies",
      "access_type": "system",
      "possible_keys": ["PRIMARY"],
      "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": 1,
      "filtered": 100
    },
    "table": {
      "table_name": "cscart_product_prices",
      "access_type": "range",
      "possible_keys": ["product_id"],
      "key": "product_id",
      "key_length": "9",
      "used_key_parts": ["product_id", "lower_limit", "usergroup_id"],
      "rows": 2,
      "filtered": 100,
      "attached_condition": "trigcond(1) and trigcond(cscart_product_prices.product_id = 78 and 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"],
      "key": "PRIMARY",
      "key_length": "9",
      "used_key_parts": ["product_id", "lang_code"],
      "ref": ["const", "const"],
      "rows": 1,
      "filtered": 100,
      "attached_condition": "trigcond(cscart_product_descriptions.lang_code = 'en')"
    },
    "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": 5,
      "filtered": 100
    },
    "table": {
      "table_name": "cscart_categories",
      "access_type": "eq_ref",
      "possible_keys": ["PRIMARY", "c_status"],
      "key": "PRIMARY",
      "key_length": "3",
      "used_key_parts": ["category_id"],
      "ref": ["herbaria_cscart_4_18.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": "const",
      "possible_keys": ["PRIMARY", "dispatch"],
      "key": "PRIMARY",
      "key_length": "210",
      "used_key_parts": [
        "object_id",
        "type",
        "dispatch",
        "lang_code",
        "company_id"
      ],
      "ref": ["const", "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 = 'en')"
    },
    "table": {
      "table_name": "cscart_discussion",
      "access_type": "const",
      "possible_keys": ["object_id", "idx_company_id"],
      "key": "object_id",
      "key_length": "10",
      "used_key_parts": ["object_id", "object_type", "company_id"],
      "ref": ["const", "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
    }
  }
}

Result

product_id product_code product_type status list_price amount weight length width height shipping_freight low_avail_limit timestamp is_edp edp_shipping unlimited_download tracking free_shipping zero_price_action is_pbp is_op is_oper company_id is_returnable return_period avail_since localization min_qty max_qty qty_step list_qty_count tax_ids age_verification age_limit usergroup_ids options_type exceptions_type details_layout shipping_params out_of_stock_actions updated_timestamp facebook_obj_type parent_product_id cp_bar cp_seo_use_addon cp_seo_no_index cp_sr_variation_type cp_fake_product cp_not_crop_auto lang_code product shortname short_description full_description meta_keywords meta_description search_words page_title age_warning_message promo_text cp_contents price category_ids popularity company_name sales_amount seo_name seo_path discussion_type average_rating product_reviews_count
78 F-OFL A 6.49 100 4.500 0 0 0 0.00 0 1244437200 N N N D N R N N N 1 Y 10 0 0 0 0 0 7,8,9 N 0 0 P F default a:5:{s:16:"min_items_in_box";i:1;s:16:"max_items_in_box";i:100;s:10:"box_length";i:4;s:9:"box_width";i:3;s:10:"box_height";i:1;} N 1749671312 activity 0 1.000 Y D M N N en Old-Fashioned Lye Soap There's old-time goodness in this all-vegetable Castile soap. Old Fashioned Lye Soap is great for bathing, shampooing, and washing clothes. Its only scent is the pure, clean soap smell. The old soap-making process we use retains natural glycerin. We don't want to brag, but this is probably a finer soap than Grandma used to make. We start with fresh food-grade oils in our bars. Together they make a bar that is moisturizing, that lathers well, and is long-lasting. <p class="pquote">"And my hands are much better after switching from pump soap to your bar soap for my frequent hand washing&mdash;no more dry knuckles!"</p> <p class="pquotedperson">Mia Barnard from our Facebook page</p> <p>&nbsp;</p> <p><strong>Classic Soap</strong></p> <p>Old-Fashioned Lye Soap is great for bathing, shampooing, and washing clothes. Its only scent is the pure, clean soap smell, aka <a href="/products-by-category/scent-group/fragrance-free-soaps/">unscented</a>. The age-old soap-making process we use creates a bar that is moisturizing, lathers well and is long-lasting.&nbsp;</p> <p><strong>Our Plain Soap Base</strong></p> <p>We don't want to brag, but this is probably a finer soap than Grandma used to make. We start with fresh food-grade oils in our bars&mdash;<a href="/all-natural-ingredients.html#bmkSoapBase">olive oil, soy oil, and palm kernel oils</a>. Lye is what converts the fats to soap, but not any of the caustic lye is left after saponification. In the process, glycerin is formed. Considered a&nbsp;humectant, glycerin draws moisture from the air to soften your skin.</p> <p><img src="https://herbariasoap.com/images/companies/1/KansasOldSoap-550-80.jpg?1593804927745" alt="old-fashioned cakes of soap photo" width="550" height="447"></p> <p><strong>Folk Claims About Lye Soap</strong></p> <ul> <li>It's excellent for removing laundry stains.</li> <li>Wash right after exposure to remove poison ivy.&nbsp;</li> <li>Put it under your bottom sheet at the bottom of your bed to alleviate leg cramps.</li> <li>It sucks the heat out of sunburn.&nbsp;</li> <li>The lather relieves the itching of mosquito and chigger bites and also repels mosquitoes.</li> <li>Hang lye soap on trees to keep away insects that bore.</li> <li>A bar under the sink keeps ants away.</li> <li>A bit on a hook is good catfish bait.</li> <li>It keeps kids from swearing.</li> </ul> <p>&nbsp;</p> <div class="divCalloutCenter"> <p><img src="https://herbariasoap.com/images/companies/1/oldfashionedlyetub-550-80.jpg?1593805083458" alt="old-fashioned photo of kids bathing in a wooden tub" width="550" height="411"></p> <p class="pphotocaption"><em>Tub not included.</em></p> <p class="pquote">"I just wanted to say 'thanks' for your amazing soap. I love handmade soap but don't have the time to make it. It means a lot to me that you take the time to make such awesome soap that is also good for people and the planet. I wish more people knew why they should use soap like yours. I will definitely be a customer for life!"</p> <p class="pquotedperson">Erika Thompson, Silverdale, WA</p> <p><img src="/images/child-washing-hands.gif" alt="old-fashioned drawing of girl washing in sink" width="136" height="174"></p> <p class="pquote">"I still use lye soap to clean clothes. It gets out grease the best. I rub a grease stain with lard, set it a while, then clean with the soap. I don't shave up the soap. That's too much work. I put a few pieces of soap in a mesh bag, like oranges come in, and let them dissolve a few minutes in the washing machine until it dissolves, then take the bag out."</p> <p class="pquotedpersonlast">Betty Streck, Jefferson City, MO</p> </div> <h3>Contains</h3> <ul> <li><a href="/all-natural-ingredients.html#bmkSoapBase">saponified olive oil and/or rice bran oil, palm kernel oil and soy oil</a></li> <li><a href="/glycerin-soaps-products/">glycerin</a></li> <li><strong>nothing else</strong></li> </ul> <p><strong><img src="https://herbariasoap.com/images/companies/1/LyeHopperwithSoapy-550-80.jpg?1593808198226" alt="lye hopper" width="550" height="549"></strong></p> <p><em>Pioneers made their own lye, or potash, by pouring water through ashes. Photo taken at Lincoln's New Salem State Historic Site, Illinois.&nbsp;</em><strong>&nbsp;</strong>&nbsp;</p> <p><strong>You may wish to explore:</strong></p> <ul> <li><a href="/products-by-category/scent-group/fragrance-free-soaps/">Fragrance-Free Soaps</a></li> <li><a href="/products-by-category/collections/old-fashioned-soaps/">Old-Fashioned Soaps</a></li> <li><a href="/products-by-category/texture/smooth-untextured-soaps/">Smooth/Untextured Soaps</a></li> </ul> Old-Fashioned Lye soap 'I love this soap!' Moisturizing base oils. Buy 6 get 1 free. Free shipping on orders over $60. Over 60 varieties healthy for face and body. Herbaria Old-Fashioned Lye Soap -Handmade - All Natural - All Vegetable 6.49000000 1M,21,25,249,257,261,269,306 402270 Herbaria 1430 old-fashioned-lye-soap 1