query39.sql 1.0 KB

1234567891011121314151617181920212223242526
  1. with inv as
  2. (select w_warehouse_name,w_warehouse_sk,i_item_sk,d_moy
  3. ,stdev,mean, case mean when 0 then null else stdev/mean end cov
  4. from(select w_warehouse_name,w_warehouse_sk,i_item_sk,d_moy
  5. ,stddev_samp(inv_quantity_on_hand) stdev,avg(inv_quantity_on_hand) mean
  6. from inventory
  7. ,item
  8. ,warehouse
  9. ,date_dim
  10. where inv_item_sk = i_item_sk
  11. and inv_warehouse_sk = w_warehouse_sk
  12. and inv_date_sk = d_date_sk
  13. and d_year =1999
  14. group by w_warehouse_name,w_warehouse_sk,i_item_sk,d_moy) foo
  15. where case mean when 0 then 0 else stdev/mean end > 1)
  16. select inv1.w_warehouse_sk,inv1.i_item_sk,inv1.d_moy,inv1.mean, inv1.cov
  17. ,inv2.w_warehouse_sk,inv2.i_item_sk,inv2.d_moy,inv2.mean, inv2.cov
  18. from inv inv1,inv inv2
  19. where inv1.i_item_sk = inv2.i_item_sk
  20. and inv1.w_warehouse_sk = inv2.w_warehouse_sk
  21. and inv1.d_moy=3
  22. and inv2.d_moy=3+1
  23. order by inv1.w_warehouse_sk,inv1.i_item_sk,inv1.d_moy,inv1.mean,inv1.cov
  24. ,inv2.d_moy,inv2.mean, inv2.cov
  25. ;