Oracle 3


SQL Plusフォーマットコマンド


  • COLUMN FORMATコマンド
  • ex)
    column ename format A40
    column comm format 9,999,999
    column comm format 0,000,000

    文字関数


    1.大文字と小文字の変換関数


  • UPPER
    大文字に変換

  • LOWER
    小文字に変換

  • INTCAT
    最初の文字を大文字に変換し、残りの文字を小文字に変換
  • 2.文字長戻り関数

  • LENGTH
    長さ:
  • (ハングル1 byte)
  • LENGTHB
  • のバイト数を返します.
    ex)
    1. SELECT LENGTH('HelloWorld'), LENGTHB('HelloWorld') FROM dual;
    
      LENGTH('HELLOWORLD') LENGTHB('HELLOWORLD')
      -------------------- ---------------------
                        10                    10
    
    2. SELECT LENGTH('헬로우월드'), LENGTHB('헬로우월드') FROM dual;
    
       LENGTH('헬로우월드')   LENGTHB('헬로우월드')
      -------------------- ---------------------
                         5                    15

    3.文字操作関数


  • CONCAT
    連結文字列
    ex) CONCAT('Hello', 'World') -> HelloWolrd

  • SUBSTR(ターゲット、開始位置、抽出する数)
    既存の文字列からのみ一部抽出されます.文字列の先頭から始まる文字数のみ出力
  • ex)
    1. SELECT SUBSTR('Hello Wolrd', 2,3), SUBSTR('Hello Wolrd', -2,3) FROM dual;
    
        SUBSTR SUBS
        ------ ----
        ell    rd
    
    2. SELECT * FROM emp WHERE SUBSTR(ename, 1, 1) = 'A';  : 첫 번째 글자 한개를 추출해서 A로 시작하는 사원만 출력
    
         EMPNO ENAME                JOB                       MGR HIREDATE        SAL       COMM     DEPTNO
    ---------- -------------------- ------------------ ---------- -------- ---------- ---------- ----------
          7499 ALLEN                SALESMAN                 7698 81/02/20       1600        300         30
         
  • INSTR(ターゲット、検索する文字、開始位置、検出回数)
  • 文字列の位置を示します.
    ex)
    1. SELECT INSTR('Hello Wolrd', 'o', 1, 2) FROM dual;  : 'o'를 찾는데 1번째 부터 시작해 2번째 글자를 출력
    
        INSTR('HELLOWOLRD','o', 1, 2)
        ---------------------------
                                  8
    
    2. SELECT * FROM emp WHERE INSTR(ename,'R', 3, 1) = 3;  : 세 번째 자리가 'R'인 사원을 검색
    
         EMPNO ENAME                JOB                       MGR HIREDATE        SAL       COMM     DEPTNO
    ---------- -------------------- ------------------ ---------- -------- ---------- ---------- ----------
          7521 WARD                 SALESMAN                 7698 81/02/22       1250        500         30
          7654 MARTIN               SALESMAN                 7698 81/09/28       1250       1400         30
          7844 TURNER               SALESMAN                 7698 81/09/08       1500          0         30
          7902 FORD                 ANALYST                  7566 81/12/03       3000                    20
         
  • PAD(ターゲット、ビット数、特定シンボル)
  • LPAD:指定した桁数の右側に列またはターゲット文字列を表示し、左側の残りの位置の
  • を特定の記号で埋めます.
  • RPAD:指定するビット数から列またはターゲット文字列を左に表示し、右側の残りの
  • を特定の記号で塗りつぶす.
    ex)LPAD(ename,10,"@"):従業員名の前に10個の位置を配置し、"@"で空欄にする
  • TRIM
  • LTRIM:文字列の左(前)の空白文字を削除
  • RTRIM:文字列右(後)スペース
  • を削除
  • TRIM:文字列の前後のスペース
  • を削除
    **を参照
  • 聖潤静《データベース性能の最適化Oracle 11 gプログラミング》,北思科(2011)