DATA : gv_carrid TYPE sflight-carrid,
gv_connid TYPE sflight-connid,
gv_paymentsum TYPE i.
SELECT carrid connid AVG( paymentsum ) AS paymentsum
INTO (gv_carrid, gv_connid, gv_paymentsum)
FROM sflight
GROUP BY carrid connid
ORDER BY paymentsum.
WRITE : / gv_carrid, gv_connid, gv_paymentsum.
ENDSELECT.
as paymentsum, order by 를 사용하려면 꼭 들어가야 하는건가요?
쿼리문장에서 TABLE이나 필드항목을 알리아스(ALIAS)=별명을 붙여서 사용할수 있는데요
필드명이 너무 길다던가, 자기만의 이해하기 쉽게 별명지정하고 싶거나, 다른테이블인데 동일한 필드명일때
알리아스를 붙여사용하는데요.
SELECT 라인에 AVG( paymentsum ) 을 SELECT 구문에서 별명을 붙여 사용하는것으로
AVG( paymentsum) as AA 라고 한다면 paymentsum의 평균값을 AA필드라는 별명으로 사용해서
order by AA 이렇게 쓰시면 되는 겁니다.
order by 에 꼭 들어가야 하는냐는
오라클 데이타베이스에서 쿼리에는 order by avg( paymentsum ) 사용해도 되는데 abap에서는
order by AVG( paymentsum ) 놓으면 띄어쓰기땜시 AVG( 필드가 뭔지 모른다고 에러 뿜어버립니다.
그러니 반드시 별명적어서 쓰셔야 합니다.
<혹시> avg(paymentsum) 붙여서 쓰면 어떨까? AVG에 커서 놓고 F1눌러보시면 알수있어요.