컬럼의 금액을 그대로 끌고오려합니다..2 0 1 1,897

by 여비몬 [2015.06.26 10:32:45]


안녕하세요 이부분을 잘 몰라 여쭙게되었습니다..

아래의 쿼리를 실행하면

select b.item, sum(a.qty+a.price)

  from table a, table b

where a.item = b.item

 

아이템        금액

itemb         30,000

itembF        null

 

위의 결과값처럼 item 뒤에 F자가 붙는 item만 null로 되어있습니다.

원본코드인 itemb의 가격을 그대로 끌고오려면 어떻게해야할까요...?

다른 코드들인 itema 라면 itemaF인 코드는 금액이 null로 들어가 있습니다.

 

sql이 아닌 mssql이다보니 decode나 substr을 못쓰다보니 이렇게 다시 한번

질문을 남깁니다..

by 창조의날개 [2015.06.26 14:22:50]
-- 지난번거를 MSSQL에서 돌아가게 바꿔 봤습니다


select b.item
     , CASE WHEN (a.qty+a.price) = null
            THEN (SELECT (qty+price) FROM tableA WHERE ITEM = REPLACE(A.ITEM,'F','') )
            ELSE (a.qty+a.price)
       END QP_SUM
  from table a, table b
where a.item = b.item
;

-- REPLACE는 문법이 비슷하네요..
-- DECODE대신 CASE를 썻네요..
-- SQL서버가 없어서 테스트는 못해보내요..

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입