-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 件のコメント:
コメントを投稿