2013/08/26

09-05.Sing-Row Functions【その他関数】

■DUMP
 -DUMPはバイトサイズと該当データタイプのコードを返す

--16の代わりに8を入れると8進数に、10を入れると10進数に変換される
--Lenはenameの該当byte数
SQL> SELECT ename, DUMP(ename,16) "16進数"
  2  FROM emp
  3  WHERE ename = 'ALLEN';

ENAME
----------
16進数
--------------------------------------------------------------------------------
ALLEN
Typ=1 Len=5: 41,4c,4c,45,4e



※※ DATATYPE の定義 ※※

1 VARCHAR2(size) [BYTE | CHAR]
1 NVARCHAR2(size)
2 NUMBER(p,s)
8 LONG
12 DATE
23 RAW(size)
24 LONG RAW
69 ROWID
96 CHAR(size)[BYTE | CHAR]
96 NCHAR(size)
112 CLOB
112 NCLOB
113 BLOB
114 BFILE
180 TIMESTAMP (fractional_seconds_precision)
181 TIMESTAMP (fractional_seconds_precision) WITH TIME ZONE
182 INTERVAL YEAR (year_precision) TO MONTH
183 INTERVAL DAY (day_precision) TO SECOND (fractional_seconds_precision)
208 UROWID [(size)]
231 TIMESTAMP (fractional_seconds_precision) WITH LOCAL TIME ZONE

■GREATEST
 -検索した値の中、最大値を返す

SQL> SELECT GREATEST(10, 100, 5, -7) FROM DUAL;

GREATEST(10,100,5,-7)
---------------------
                  100



■LEAST
 -検索した値の中、最小値を返す

SQL> SELECT LEAST(10, 100, 5,-7) FROM DUAL;

LEAST(10,100,5,-7)
------------------
                -7



■UID, USER
 -UID現在ユーザーのID番号を返す
 -USERはユーザーをVARCHAR2で返す

SQL> SELECt USER, UID FROM DUAL;

USER                                  UID
------------------------------ ----------
SCOTT                                  84



■USERENV
 -セッション環境情報を返す

 ・ENTRYID:使用可能なAuditing entry Identifierを返す
 ・LABEL:現在セッションのLabelを返す
 ・LANGUAGE:現在セッションで使用中の言語とテリトリー値を返す
 ・SESSIONID:Auditing Session IDを返す
 ・TERMINAL:現在セッションターミナルのOS IDを返す

SQL> SELECT USERENV('ENTRYID') FROM DUAL;

USERENV('ENTRYID')
------------------
                 1

SQL> SELECT USERENV('LANGUAGE') FROM DUAL;

USERENV('LANGUAGE')
----------------------------------------------------
JAPANESE_JAPAN.JA16SJISTILDE

SQL> SELECT USERENV('SESSIONID') FROM DUAL;

USERENV('SESSIONID')
--------------------
              210381



■VSIZE
 -該当文字のBYTE数を返す。該当文字がNULLならNULLを返す

SQL> SELECT VSIZE(ename), ename
  2  FROM emp
  3  WHERE deptno = 30;

VSIZE(ENAME) ENAME
------------ ----------
           5 ALLEN
           6 MARTIN
           5 BLAKE
           6 TURNER
           5 JAMES

0 件のコメント:

コメントを投稿

QLOOKアクセス解析