0001 SELECT *
0002 FROM (
0003 SELECT
0004 w_warehouse_name,
0005 i_item_id,
0006 sum(CASE WHEN (cast(d_date AS DATE) < cast('2000-03-11' AS DATE))
0007 THEN inv_quantity_on_hand
0008 ELSE 0 END) AS inv_before,
0009 sum(CASE WHEN (cast(d_date AS DATE) >= cast('2000-03-11' AS DATE))
0010 THEN inv_quantity_on_hand
0011 ELSE 0 END) AS inv_after
0012 FROM inventory, warehouse, item, date_dim
0013 WHERE i_current_price BETWEEN 0.99 AND 1.49
0014 AND i_item_sk = inv_item_sk
0015 AND inv_warehouse_sk = w_warehouse_sk
0016 AND inv_date_sk = d_date_sk
0017 AND d_date BETWEEN (cast('2000-03-11' AS DATE) - INTERVAL 30 days)
0018 AND (cast('2000-03-11' AS DATE) + INTERVAL 30 days)
0019 GROUP BY w_warehouse_name, i_item_id) x
0020 WHERE (CASE WHEN inv_before > 0
0021 THEN inv_after / inv_before
0022 ELSE NULL
0023 END) BETWEEN 2.0 / 3.0 AND 3.0 / 2.0
0024 ORDER BY w_warehouse_name, i_item_id
0025 LIMIT 100