From 1f9d9159c5ad978b73776ad19c08afeb3abcf4e1 Mon Sep 17 00:00:00 2001 From: Martin Carlsson Date: Mon, 11 May 2020 17:53:32 +0200 Subject: [PATCH] P5-5224: remove designercollectionid from "product-products" --- migrations/000.187.sql | 564 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 564 insertions(+) create mode 100644 migrations/000.187.sql diff --git a/migrations/000.187.sql b/migrations/000.187.sql new file mode 100644 index 0000000..728b565 --- /dev/null +++ b/migrations/000.187.sql @@ -0,0 +1,564 @@ +-- P5-5224: remove designercollectionid from "product-products" + +-- v_product +DROP VIEW IF EXISTS v_product; + +CREATE VIEW v_product AS + SELECT main.product_id AS id, + main."artNo", + stock.id AS stock_id, + stock.price AS stock_price, + main.path, + main.visible, + main.browsable, + main.designerid, + main.name, + main.height, + main.print_file_height, + main.original_article_number, + main.width, + main.print_file_width, + main.widths, + main.min_height, + main.min_width, + main.max_height, + main.max_width, + main.photowall_resolution, + main.canvas_resolution, + main.wallpaper_resolution, + main.print_file_dpi, + main.lock_height, + COALESCE(main.additionalprice, 0::double precision) AS additionalprice, + main.ref1, + main.ref2, + main.ref3, + main.copyright, + main.proportions_warning, + main.margin_width_max, + main.margin_width_min, + main.margin_height_max, + main.margin_height_min, + main.width::numeric / + CASE + WHEN main.height = 0 THEN '-1.0'::numeric + ELSE main.height::numeric + END AS width_height_ratio, + main.batch, + main.image_resolution, + main."focusXpoint", + main."focusYpoint", + main."focusXpoint2", + main."focusYpoint2", + main.repeating_pattern + FROM ( SELECT products.productid AS product_id, + products.path, + products.visible, + products.browsable, + products.designerid, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'artNo'::text + LIMIT 1))) AS "artNo", + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'name'::text + LIMIT 1))) AS name, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'height'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS height, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'print_file_height'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS print_file_height, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'orgArtNo'::text + LIMIT 1))) AS original_article_number, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'width'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS width, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'print_file_width'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS print_file_width, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'widths'::text + LIMIT 1))) AS widths, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'min-height'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS min_height, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'min-width'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS min_width, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'max-height'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS max_height, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'max-width'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS max_width, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'photowall_resolution'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS photowall_resolution, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'canvas_resolution'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS canvas_resolution, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'wallpaper_resolution'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS wallpaper_resolution, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'lock_height'::text + LIMIT 1))) AS lock_height, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'additionalprice'::text + LIMIT 1))))::double precision AS additionalprice, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'ref1'::text + LIMIT 1))) AS ref1, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'ref2'::text + LIMIT 1))) AS ref2, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'ref3'::text + LIMIT 1))) AS ref3, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'copyright'::text + LIMIT 1))) AS copyright, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'proportions_warning'::text + LIMIT 1))) AS proportions_warning, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'margin_width_max'::text + LIMIT 1))) AS margin_width_max, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'margin_width_min'::text + LIMIT 1))) AS margin_width_min, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'margin_height_max'::text + LIMIT 1))) AS margin_height_max, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'margin_height_min'::text + LIMIT 1))) AS margin_height_min, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'batch'::text + LIMIT 1))) AS batch, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'image_resolution'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS image_resolution, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'print_file_dpi'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS print_file_dpi, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'focusXpoint'::text + LIMIT 1))))::double precision AS "focusXpoint", + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'focusYpoint'::text + LIMIT 1))))::double precision AS "focusYpoint", + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'focusXpoint2'::text + LIMIT 1))))::double precision AS "focusXpoint2", + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'focusYpoint2'::text + LIMIT 1))))::double precision AS "focusYpoint2", + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'repeating_pattern'::text + LIMIT 1))) AS repeating_pattern + FROM "product-products" products) main + LEFT JOIN ( SELECT s.stockid AS id, + s.productid AS product_id, + ( SELECT "product-stockprices".price + FROM "product-stockprices" + WHERE "product-stockprices".priceid = s.priceid + LIMIT 1) AS price + FROM "product-stockproducts" s) stock ON main.product_id = stock.product_id; + + + + + +-- v_esales_product +DROP MATERIALIZED VIEW v_esales_product; + +CREATE MATERIALIZED VIEW v_esales_product AS + SELECT main.product_id AS id, + main."artNo", + stock.id AS stock_id, + stock.price AS stock_price, + main.path, + main.visible, + main.browsable, + main.designerid, + designer.name AS designer_name, + designer.path AS designer_path, + designer.visible_productpage AS designer_visible_productpage, + ( SELECT "product-printproducts".typeid + FROM "product-printproducts" + WHERE "product-printproducts".productid = main.product_id + LIMIT 1) AS producttype_id, + main.name, + main.height, + main.original_article_number, + main.width, + main.widths, + main.min_height, + main.min_width, + main.max_height, + main.max_width, + main.photowall_resolution, + main.canvas_resolution, + main.wallpaper_resolution, + main.lock_height, + COALESCE(main.additionalprice, 0::double precision) AS additionalprice, + main.ref1, + main.ref2, + main.ref3, + main.copyright, + main.proportions_warning, + main.margin_width_max, + main.margin_width_min, + main.margin_height_max, + main.margin_height_min, + main.width::numeric / + CASE + WHEN main.height = 0 THEN '-1.0'::numeric + ELSE main.height::numeric + END AS width_height_ratio, + main.batch, + main.image_resolution, + main."focusXpoint", + main."focusYpoint", + main."focusXpoint2", + main."focusYpoint2", + main.repeating_pattern, + main.print_file_width, + main.print_file_height, + main.print_file_dpi + FROM ( SELECT products.productid AS product_id, + products.path, + products.visible, + products.browsable, + products.designerid, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'artNo'::text + LIMIT 1))) AS "artNo", + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'name'::text + LIMIT 1))) AS name, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'height'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS height, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'orgArtNo'::text + LIMIT 1))) AS original_article_number, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'width'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS width, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'widths'::text + LIMIT 1))) AS widths, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'min-height'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS min_height, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'min-width'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS min_width, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'max-height'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS max_height, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'max-width'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS max_width, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'photowall_resolution'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS photowall_resolution, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'canvas_resolution'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS canvas_resolution, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'wallpaper_resolution'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS wallpaper_resolution, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'lock_height'::text + LIMIT 1))) AS lock_height, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'additionalprice'::text + LIMIT 1))))::double precision AS additionalprice, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'ref1'::text + LIMIT 1))) AS ref1, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'ref2'::text + LIMIT 1))) AS ref2, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'ref3'::text + LIMIT 1))) AS ref3, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'copyright'::text + LIMIT 1))) AS copyright, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'proportions_warning'::text + LIMIT 1))) AS proportions_warning, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'margin_width_max'::text + LIMIT 1))) AS margin_width_max, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'margin_width_min'::text + LIMIT 1))) AS margin_width_min, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'margin_height_max'::text + LIMIT 1))) AS margin_height_max, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'margin_height_min'::text + LIMIT 1))) AS margin_height_min, + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'batch'::text + LIMIT 1))) AS batch, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'image_resolution'::text + LIMIT 1)) AND "product-products_fields".value::text ~ '^\d+$'::text))::integer AS image_resolution, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'focusXpoint'::text + LIMIT 1))))::double precision AS "focusXpoint", + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'focusYpoint'::text + LIMIT 1))))::double precision AS "focusYpoint", + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'focusXpoint2'::text + LIMIT 1))))::double precision AS "focusXpoint2", + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'focusYpoint2'::text + LIMIT 1))))::double precision AS "focusYpoint2", + ( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'repeating_pattern'::text + LIMIT 1))) AS repeating_pattern, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'print_file_width'::text + LIMIT 1))))::integer AS print_file_width, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'print_file_height'::text + LIMIT 1))))::integer AS print_file_height, + (( SELECT "product-products_fields".value + FROM "product-products_fields" + WHERE "product-products_fields".productid = products.productid AND "product-products_fields".fieldid = (( SELECT "product-fields".fieldid + FROM "product-fields" + WHERE "product-fields".field::text = 'print_file_dpi'::text + LIMIT 1))))::integer AS print_file_dpi + FROM "product-products" products) main + LEFT JOIN ( SELECT s.stockid AS id, + s.productid AS product_id, + ( SELECT "product-stockprices".price + FROM "product-stockprices" + WHERE "product-stockprices".priceid = s.priceid + LIMIT 1) AS price + FROM "product-stockproducts" s) stock ON main.product_id = stock.product_id + LEFT JOIN ( SELECT designers.designerid AS id, + designers.name, + designers.path, + CASE + WHEN designers.status = 1 AND designers.visible_productpage = 1 THEN 1 + ELSE 0 + END AS visible_productpage + FROM designers) designer ON main.designerid = designer.id + WHERE main.width IS NOT NULL AND main.height IS NOT NULL; + + +ALTER MATERIALIZED VIEW v_esales_product OWNER TO photowall; + + +ALTER TABLE "product-products" + DROP COLUMN IF EXISTS designercollectionid;