--명구선배님
[퀴즈]
출판업 출고테이블이 있습니다.
출고 및 반품 처리시 입력된 거래처 와 품목코드에
해당하는 가장 최근 날짜에 입력된 출고율을 그대로
이번 출고 반품 처리시에도 적용하기 위해서
세부내역 첫번째 컬럼 아이템코드에 아이템코드를 입력하고
키다운시 출고율을 가져와야 합니다. 이때 쿼리는 얼케 짤까?
테이블 t_sale_deliverysub
컬럼 gubun , itemcode , custcode , outrate , condate
기본조회
select outrate
from t_sale_deliverysub
where gubun='01' and custcode='?????'
and itemcode='?????'
내일아침까지 가장 최적화된 쿼리를 짜보세용
아마 위에 예시가 이경우만이 아니라 많은 경우에 사용할거에요
컬럼 a(수량) , b(날짜) 가 있는데 가장 최소 최대의 b(날짜)에
해당하는 a(수량) 의 값을 가져올 경우가 많지요
강민기 연구원
select a.outrate
from t_sale_deliverysub as a
where a.gubun = '01' and a.custcode = 'xxxx'
and a.itemcode = 'xxxx'
and a.condate = (select max(b.condate) from t_sale_deliverysub as b where a.gubun = b.gubun and a.condate >= b.condate)
하
select top 1 a.outrate
from t_sale_deliverysub a
where a.gubun='01' and a.custcode='?????'
and a.itemcode='?????'
and a.condate = (select max(condate) from t_sale_deliverysub where gubun='01' and custcode='?????' and itemcode='?????' )
중
select top 1 a.outrate
from t_sale_deliverysub a
where a.gubun='01' and a.custcode='?????'
and a.itemcode='?????'
order by a.condate desc
상
select convert(money,stuff(max(a.condate + convert(varchar(8),a.outrate)),1,8,''))
from t_sale_deliverysub a
where a.gubun='01' and a.custcode='?????'
and a.itemcode='?????'