메뉴 건너뛰기

SAP 한국 커뮤니티

abap 7.4 open sql 변경 사항

프링글스 2014.04.29 21:30 조회 수 : 9361

SAP NetWeaver 7.4 SP05 에서는 기존 Open Sql과 비교하여 변경되고 추가된 기능이 몇가지 있습니다
이러한 기능은 기존에 비하여 가독성을 좋게 하고 데이터베이스 레벨에서 작업을 가능하게 하여 성능
향상에도 도움이 됩니다.

.

컬럼 분리 및 변수에 @ 사용


이전에는 OPEN SQL 에서 컬럼을 분리할 때 스페이스를 사용하였는데 이제는 comma(,)를 사용하고 변수에는 @를 붙여서 

      가독성이 좋아졌습니다

 

예시)

      SELECT carrid, connid, fldate

       FROM sflight

       INTO CORRESPONDING FIELDS OF TABLE@sflight_tab

       WHERE carrid = @carrier AND

              connid = @connection

       ORDER BY carrid, connid.

 

SQL Expressions


SELECT 
문의 컬럼 리스트에 다양한 SQL Expressions 사용이 가능하게 되었고 이에 따라

기존에 어플리케이션 레벨에서 이루어지던 작업을 데이터베이스 레벨에서 이루어지도록 하여 성능을 향상 시킬 수 있습니다.

 

1)계산식 및 계산 함수 사용


SELECT구문에서 사칙 연산 및 number 함수 사용이 가능합니다.

 

예시)

      SELECTid, num1, num2,

             cast( num1 AS fltp ) / cast( num2 AS fltp) AS ratio,

             div(num1, num2 ) AS div,

             mod(num1, num2 ) AS mod,

             @offset + abs( num1 - num2 ) AS sum

      FROM demo_expressions

      INTO CORRESPONDING FIELDS OF TABLE @results

      ORDER BY SUM DESCENDING.

 

2) 형 변환


   SELECT 구문에서 CAST 를 사용하여 형 변환이 가능합니다.(위의 예시 참조)

 

3) 문자열 연결


  SELECT 구문에서 &&를 사용하여 문자열 연결이 가능합니다.

 

예시)

         SELECTchar1 && char2

           FROM demo_expressions

           INTO CORRESPONDING FIELDS OF TABLE@results.

 

4) NULL 대체


  SELECT 구문에서 coalesce 함수를 사용하여 null 일 경우 다른 값으로 대체합니다.

 

예시)

SELECT t1~a AS a1, t1~b as b1,t1~c AS c1, t1~d as d1,

       coalesce( t2~d, '--' ) AS d2,

       coalesce( t2~e, '--' ) as e2,

       coalesce( t2~f, '--' ) AS f2,

       coalesce( t2~g, '--' ) as g2,

       coalesce( t2~h, '--' ) AS h2

 FROM demo_join1 AS t1

        LEFT OUTER JOIN demo_join2 AS t2 ONt2~d = t1~d

 INTO CORRESPONDING FIELDS OF TABLE @itab

 ORDER BY t1~d.

 

5) CASE문 사용


  SELECT 구문에서 CASE문을 사용하여 조건에 따라 다른 데이터를 가져올 수 있습니다.

 

예시)

         SELECTid, char1, char2,

                CASE char1

                   WHEN 'aaaaa' THEN ( char1 &&char2 )

                   WHEN 'xxxxx' THEN ( char2 &&char1 )

                   ELSE @else

                END AS text

           FROM demo_expressions

           INTO CORRESPONDING FIELDS OF TABLE@results.

번호 제목 글쓴이 날짜 조회 수
69 MB transactions: Limited maintenance/decommissioning [2] sapjoy 2015.11.19 1572
68 New OPEN SQL 예제8- Constant value 사용 file sapjoy 2015.10.19 1757
67 Best Practice Guide - Considerations for Custom ABAP Code During a Migration to SAP HANA.pdf [5] file sapjoy 2015.10.30 1904
66 새로운 문법 : Declaration Expression sapjoy 2015.10.15 2010
65 New OPEN SQL 예제4 [1] file sapjoy 2015.10.12 2050
64 ABAP CDS with JOIN statement file sapjoy 2015.11.02 2051
63 How to Consume HANA View in ABAP Using External View and Open SQL.pdf [2] file sapjoy 2015.11.09 2054
62 [영문/PDF]End to End Development Example with SAP NetWeaver 7.4 & SAP HANA [5] file LOAL 2017.06.14 2082
61 New OPEN SQL 예제3 [1] file sapjoy 2015.10.08 2095
60 New OPEN SQL 예제5 file sapjoy 2015.10.13 2105
59 New OPEN SQL 예제7- COLAESCE사용하여 NULL 대체 file sapjoy 2015.10.15 2105
58 [영문/PDF] SAP Activate file 보나(박민철) 2016.07.04 2162
57 New OPEN SQL 예제2 file sapjoy 2015.10.07 2178
56 New OPEN SQL 예제6 file sapjoy 2015.10.14 2182
55 ABAP CDS 호출 file sapjoy 2015.10.26 2190
54 [영문/PDF] SAP MCC file 보나(박민철) 2016.10.24 2227
53 Memory for screen LOAD is used up. bytes) is not available. sapjoy 2015.10.15 2257
52 New OPEN SQL 예제10- SQL 구문에서 DIRECT 변수 선언 file sapjoy 2015.10.21 2265
51 [영문/PDF] SAP Activate - Introducing SAPs Next Generation, Agile-Based Methodology file 보나(박민철) 2016.07.04 2272
50 [영문/PDF] SAP Simple Finance - On Premise edition file 보나(박민철) 2016.06.23 2329