add batch remove batch split batch comment selection show hidden batches hide batch highlight batch
db<>fiddle
donate feedback about
By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
CREATE TABLE orders
AS
SELECT 5000 orders_id, CAST('2021-02-01 12:27:15' AS DATE) date_purchased
UNION ALL SELECT 5001, '2021-02-01 11:47:15'
UNION ALL SELECT 5002, '2021-02-02 1:47:15'
CREATE TABLE orders_products
AS
SELECT 5000 orders_id ,348 products_id,42169479 orders_products_id, 'APPLE' products_model, 2 products_quantity
UNION ALL SELECT 5001, 349, 42169478, 'BANANA', 1
UNION ALL SELECT 5001, 348, 42169477, 'APPLE', 1
UNION ALL SELECT 5002, 348, 42169476, 'APPLE', 3
CREATE TABLE orders_products_attributes
AS
SELECT 200035 orders_products_attributes_id , 5000 orders_id, 42169479 orders_products_id ,'Color' products_options ,'Black' products_options_values
UNION ALL SELECT 200036, 5000, 42169479 ,'Size' ,'XL'
UNION ALL SELECT 200037, 5001, 42169478 ,'Color' ,'Green'
UNION ALL SELECT 200038, 5001, 42169478 ,'Size' ,'L'
UNION ALL SELECT 200037, 5001, 42169477 ,'Color' ,'Orange'
UNION ALL SELECT 200038, 5001, 42169477 ,'Size' ,'XL'
UNION ALL SELECT 200039, 5002, 42169476 ,'Color' ,'Black'
UNION ALL SELECT 200040, 5002, 42169476 ,'Size' ,'XL'
SELECT op.products_model,
opac.products_options_values AS color,
opas.products_options_values AS size,
SUM(op.products_quantity) AS quantity
FROM orders o
JOIN orders_products op
ON o.orders_id = op.orders_id
LEFT JOIN orders_products_attributes opac
on op.orders_products_id = opac.orders_products_id
AND opac.products_options = 'Color'
LEFT JOIN orders_products_attributes opas
on op.orders_products_id = opas.orders_products_id
AND opas.products_options = 'Size'
WHERE op.products_model in ('Apple')
AND o.date_purchased > '2020-02-02 11:47:15'
AND opas.products_options_values = 'XL'
GROUP BY op.products_model,
opac.products_options_values,
opas.products_options_values;
products_model color size quantity
APPLE Black XL 5
APPLE Orange XL 1