Advertisement
Guest User

Untitled

a guest
Sep 12th, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. DROP VIEW IF EXISTS product_variation_stock_view;
  2.  
  3. CREATE VIEW product_variation_stock_view AS
  4.     SELECT
  5.         product_variations.product_id AS product_id,
  6.         product_variations.id AS product_variation_id,
  7.         COALESCE(SUM(stocks.quantity) - COALESCE(SUM(product_variation_order.quantity), 0), 0) AS stock,
  8.         CASE WHEN COALESCE(SUM(stocks.quantity) - COALESCE(SUM(product_variation_order.quantity), 0), 0) > 0
  9.             THEN true
  10.             ELSE false
  11.         END in_stock
  12.     FROM product_variations
  13.      
  14.     LEFT JOIN (
  15.         SELECT
  16.             stocks.product_variation_id AS id,
  17.             SUM(stocks.quantity) AS quantity
  18.         FROM stocks
  19.         GROUP BY
  20.             stocks.product_variation_id
  21.     ) AS stocks USING (id)
  22.    
  23.     LEFT JOIN (
  24.         SELECT
  25.             product_variation_order.product_variation_id as id,
  26.             SUM(product_variation_order.quantity) AS quantity
  27.         FROM product_variation_order
  28.         GROUP BY
  29.             product_variation_order.product_variation_id
  30.     ) AS product_variation_order USING (id)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement