Advertisement
Guest User

Untitled

a guest
Nov 22nd, 2019
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. CREATE TEMP TABLE temp_products AS
  2. SELECT "id", "manufacturer_id", "weight", "sid", "slug", "name", min(price) AS "price"
  3. FROM "product"
  4.          INNER JOIN (SELECT "product_id", cu_price AS "price"
  5.                      FROM (SELECT "stock_product".*,
  6.                                   ceil(price * (1 + (COALESCE(
  7.                                                              CASE WHEN surcharge_percent < -99 THEN 1 ELSE surcharge_percent END,
  8.                                                              10) / 100.0))) AS "cu_price"
  9.                            FROM (SELECT "product_id",
  10.                                         "price",
  11.                                         "amount",
  12.                                         "stock_id",
  13.                                         (SELECT "surcharge_percent"
  14.                                          FROM "customer_group_surcharge_range"
  15.                                          WHERE (("customer_group_surcharge_range"."stock_id" = stock_product.stock_id) OR
  16.                                                 ("customer_group_surcharge_range"."stock_id" IS NULL))
  17.                                            AND ("customer_group_surcharge_range"."customer_group_id" = 30)
  18.                                            AND (CEIL("stock_product".price) BETWEEN min_price AND max_price)
  19.                                          ORDER BY "stock_id", "min_price"
  20.                                          LIMIT 1) AS "surcharge_percent"
  21.                                  FROM "stock_product") "stock_product"
  22.                            WHERE ("amount" > 0)
  23.                              AND (EXISTS(SELECT 1 FROM "stock" WHERE ("act" = 1) AND ("id" = "stock_product".stock_id)))
  24.                              AND (NOT EXISTS(SELECT 1
  25.                                              FROM "disabled_stock_to_customer_group"
  26.                                              WHERE ("customer_group_id" = 30)
  27.                                                AND ("stock_id" = "stock_product".stock_id)))) "stock_product") "sprice"
  28.                     ON product.id = sprice.product_id
  29. WHERE EXISTS(SELECT 1
  30.              FROM "product_to_category"
  31.              WHERE ("category_id" = 781)
  32.                AND (product_to_category.product_id = product.id))
  33. GROUP BY "product"."id"
  34.  
  35. SELECT "product_attribute_id", json_agg(DISTINCT product_attribute_value_id) AS "values"
  36. FROM "product_attribute_value_to_product"
  37. WHERE "product_id" IN
  38.       (SELECT "id" FROM "temp_products" "t" WHERE ("price" BETWEEN '2' AND '241479') AND ("manufacturer_id" = '812'))
  39. GROUP BY "product_attribute_id"
  40.  
  41. SELECT min(price) AS "min", max(price) AS "max" FROM (SELECT "price" FROM "temp_products" "t" WHERE ("price" BETWEEN '2' AND '241479') AND ("manufacturer_id"='812')) "t"
  42.  
  43. SELECT COUNT(*) FROM "temp_products" "t" WHERE ("price" BETWEEN '2' AND '241479') AND ("manufacturer_id"='812')
  44.  
  45. SELECT * FROM "temp_products" "t" WHERE ("price" BETWEEN '2' AND '241479') AND ("manufacturer_id"='812') ORDER BY "price" DESC LIMIT 10
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement