Skip to content

sql Function #

Find similar titles

5회 업데이트 됨.

Edit
  • 작성자
    Dragon

You are seeing an old version of the page. Go to latest version

함수(Function)란? #

데이터베이스 오브젝트로 정의해서 만들어 둔 후에 필요할 때마다 호출해서 사용할 수 있도록 해둔 것

내장함수 #

  • 데이터베이스에서 자체 제공되는 함수로 정식명칭은 sql 함수

Oracle 내장함수의 종류 #

함수명 기능
Decode If .. Then .. Else을 처리
Greatest(값,값) 두 값중 큰 것을 return
Least(값,값) 두 값중 작은 것을 return
Sign(값) 값이 +면 1, -면 -1을, 0면 0을 return
Floor(값) 소수점 이하를 절사하여 return
Ceil(값) 소수점 이상을 절상하여 return
ascii(문자 해당 문자의 핵사 데시멀 값을 return
abs(값) 절대값을 return
max(값) 가장 큰 값을 return
rpad(값,길이,문자) 값내의 데이터 길이가 주어진 길이 이하면 우측에 문자을 채워 고정길이을 return
lpad(값,길이,문자) 값내의 데이터 길이가 주어진 길이 이하면 좌측에 문자을 채워 고정길이을 return
replace(값,문1,문2) 값=문1면 문2로 교체하여 return
min(값) 가장 작은 값을 return
count(값) 값의 건 수를 return
to_number(값) 값을 숫자로 변환하여 return

사용자 정의 함수 #

  • 개잘자나 DBA등 오라클 사용자들이 필요에 따라 정의한 함수

Oracle 사용예제 #

    CREATE OR REPLACE function CODA4.GET_RSRCH_TASK  return TASK_TYPE_TBL pipelined

    is
        v_obj TASK_TYPE;
    begin
        for obj in

            (SELECT b.EXPC_EFFECT
                 ,b.RSRCH_CN
                 ,b.RSRCH_GOAL
                 ,b.RSRCH_TASK_ID

              FROM T_CODA_REF_TASK a
                 , T_CODA_RSRCH_TASK b
             WHERE a.REF_TASK_ID=b.REF_TASK_ID
            )
     loop
            v_obj:=TASK_TYPE(
            obj.EXPC_EFFECT
            ,obj.RSRCH_CN
            ,obj.RSRCH_GOAL
            ,obj.RSRCH_TASK_ID

            );
            pipe row(v_obj);
     end loop;
    end;
0.0.1_20240318_1_v95