VW_STOCK.sql 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. DROP VIEW VW_STOCK;
  2. CREATE VIEW VW_STOCK AS
  3. SELECT A.GOODS_CD
  4. , A.OPT_CD
  5. , A.OPT_CD1
  6. , A.OPT_CD2
  7. , A.CURR_STOCK_QTY
  8. , 0 AS BASE_STOCK_QTY
  9. , A.ADD_PRICE
  10. , A.SOLDOUT_YN
  11. , A.DISP_ORD
  12. , A.DISP_YN
  13. FROM (
  14. SELECT S.GOODS_CD
  15. , S.OPT_CD
  16. , S.OPT_CD1
  17. , S.OPT_CD2
  18. , GREATEST((GREATEST(((GREATEST(S.CURR_STOCK_QTY,0) + GREATEST(S.STORE_STOCK_QTY,0)) - S.BASE_STOCK_QTY),0) - IFNULL(SQ.STOCK_QTY, 0)),0) AS CURR_STOCK_QTY
  19. , S.SOLDOUT_YN
  20. , S.ADD_PRICE
  21. , S.DISP_ORD
  22. , S.DISP_YN
  23. FROM TB_OPTION S
  24. LEFT OUTER JOIN (
  25. SELECT GOODS_CD
  26. , OPT_CD
  27. , SUM((CASE SELL_GB
  28. WHEN '10' THEN 1
  29. WHEN '20' THEN 1
  30. ELSE -1
  31. END) * SELL_QTY) AS STOCK_QTY
  32. FROM TB_SELL_QTY
  33. GROUP BY GOODS_CD, OPT_CD
  34. ) SQ ON S.GOODS_CD = SQ.GOODS_CD
  35. AND S.OPT_CD = SQ.OPT_CD
  36. ) A
  37. ;