SELECT 
  cscart_product_prices.product_id, 
  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 
FROM 
  cscart_product_prices 
WHERE 
  cscart_product_prices.product_id IN (
    759, 760, 761, 762, 763, 764, 765, 766, 
    767, 768, 769, 770, 771, 772, 773, 774, 
    775, 776, 777, 778, 779, 780, 781, 782
  ) 
  AND cscart_product_prices.lower_limit = 1 
  AND cscart_product_prices.usergroup_id IN (0, 1) 
GROUP BY 
  cscart_product_prices.product_id

Query time 0.00122

JSON explain

{
  "query_block": {
    "select_id": 1,
    "table": {
      "table_name": "cscart_product_prices",
      "access_type": "range",
      "possible_keys": ["usergroup", "product_id", "lower_limit", "usergroup_id"],
      "key": "product_id",
      "key_length": "3",
      "used_key_parts": ["product_id"],
      "rows": 24,
      "filtered": 4.897957802,
      "index_condition": "cscart_product_prices.product_id in (759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782)",
      "attached_condition": "cscart_product_prices.lower_limit = 1 and cscart_product_prices.usergroup_id in (0,1)"
    }
  }
}

Result

product_id price
759 40000.00000000
760 0.00000000
761 0.00000000
762 0.00000000
763 0.00000000
764 122000.00000000
765 122000.00000000
766 145000.00000000
767 145000.00000000
768 0.00000000
769 0.00000000
770 0.00000000
771 0.00000000
772 0.00000000
773 0.00000000
774 0.00000000
775 0.00000000
776 0.00000000
777 0.00000000
778 0.00000000
779 0.00000000
780 0.00000000
781 0.00000000
782 0.00000000