数据类型转换函数
- 数据类型转换函数用来把参数从一个数据类型转换为另一个数据类型,或者测试转换是否可行。
CAST
- CAST (expression AS data_type)
- 返回转换为提供的数据类型的表达式。
SELECT CAST (7 AS VARCHAR) "cast" FROM DUMMY;
Cast
7
TO_ALPHANUM
- TO_ALPHANUM (value)
- 将给定的 value 转换为 ALPHANUM 数据类型。
SELECT TO_ALPHANUM ('10') "to alphanum" FROM DUMMY;
to alphanum
10
TO_BIGINT
- TO_BIGINT (value)
- 将 value 转换为 BIGINT 类型。
SELECT TO_BIGINT ('10') "to bigint" FROM DUMMY;
to bigint
10
TO_BINARY
- TO_BINARY (value)
- 将 value 转换为 BINARY 类型。
SELECT TO_BINARY ('abc') "to binary" FROM DUMMY;
to binary
616263
TO_BLOB
- TO_BLOB (value)
- 将 value 转换为 BLOB 类型。参数值必须是二进制字符串。
SELECT TO_BLOB (TO_BINARY('abcde')) "to blob" FROM DUMMY;
to blob abcde
TO_CHAR
- TO_CHAR (value [, format])
- 将 value 转换为 CHAR 类型。如果省略 format 关键字,转换将会使用 Date Formats 中说明的日期格式模型。
SELECT TO_CHAR (TO_DATE('2009-12-31'), 'YYYY/MM/DD') "to char" FROM DUMMY;
to char
2009/12/31
TO_CLOB
- TO_CLOB (value)
- 将 value 转换为 CLOB 类型。
SELECT TO_CLOB ('TO_CLOB converts the value to a CLOB data type') "to clob" FROM DUMMY;
to clob
TO_CLOB converts the value to a CLOB data type
TO_DATE
- TO_DATE (d [, format])
- 将日期字符串 d 转换为 DATE 数据类型。如果省略 format 关键字,转换将会使用 Date Formats 中
说明的日期格式模型。
SELECT TO_DATE('2010-01-12', 'YYYY-MM-DD') "to date" FROM DUMMY;
to date
2010-01-12
TO_DECIMAL
-
TO_DECIMAL (value [, precision, scale])
-
将 value 转换为 DECIMAL 类型。
-
精度是有效数字的总数,范围为 1 至 34。小数位数是从小数点到最小有效数字的数字个数,范围从-6,111 到 6,176,这表示位数指定了十进制小数的指数范围从 10-6111 至 106176。如果没有指定小数位数,则默认值为 0。当数字的有效数字在小数点的右侧时,小数位数为正;有效数字在小数点左侧时,小数位数为负。
-
当未指定精度和小数位数,DECIMAL 成为浮点小数。这种情况下,精度和小数位数可以在上文描述的范围内不同,根据存储的数值,精度为 1-34 以及小数位数为 6111-6176。
SELECT TO_DECIMAL(7654321.888888, 10, 3) "to decimal" FROM DUMMY
to decimal
7654321.889
TO_DOUBLE
-
TO_DOUBLE (value)
-
将 value 转换为 DOUBLE(双精度)数据类型。
SELECT 3*TO_DOUBLE ('15.12') "to double" FROM DUMMY;
to double
45.36
TO_INT
-
TO_INT (value)
-
将 value 转换为 INTEGER 类型。
SELECT TO_INT('10') "to int" FROM DUMMY;
to int
10
TO_INTEGER
-
TO_INTEGER (value)
-
将 value 转换为 INTEGER 类型。
SELECT TO_INT('10') "to int" FROM DUMMY;
to int
10
TO_NCHAR
-
TO_NCHAR (value [, format])
-
将 value 转换为 NCHAR Unicode 字符类型。如果省略 format 关键字,转换将会使用 Date Formats中说明的日期格式模型。
SELECT TO_NCHAR (TO_DATE('2009-12-31'), 'YYYY/MM/DD') "to nchar" FROM DUMMY;
to nchar
2009/12/31
TO_NCLOB
-
TO_NCLOB (value)
-
将 value 转换为 NCLOB 数据类型。
SELECT TO_NCLOB ('TO_NCLOB converts the value to a NCLOB data type') "to nclob" FROM DUMMY;
to nclob
TO_NCLOB converts the value to a NCLOB data type
TO_NVARCHAR
-
TO_NVARCHAR (value [,format])
-
将 value 转换为 NVARCHAR Unicode 字符类型。如果省略 format 关键字,转换将会使用 DateFormats 中说明的日期格式模型。
SELECT TO_NVARCHAR(TO_DATE('2009/12/31'), 'YY-MM-DD') "to nchar" FROM DUMMY;
to nchar
09-12-31
TO_REAL
-
TO_REAL (value)
-
将 value 转换为实数(单精度)数据类型。
SELECT 3*TO_REAL ('15.12') "to real" FROM DUMMY;
to real
45.36000061035156
TO_SECONDDATE
-
TO_SECONDDATE (d [, format])
-
将 value 转换为 SECONDDATE 类型。如果省略 format 关键字,转换将会使用 Date Formats 中说明的日期格式模型。
SELECT TO_SECONDDATE ('2010-01-11 13:30:00', 'YYYY-MM-DD HH24:MI:SS') "to seconddate" FROM DUMMY;
to seconddate
2010-01-11 13:30:00.0
TO_SMALLDECIMAL
-
TO_SMALLDECIMAL (value)
-
将 value 转换为 SMALLDECIMAL 类型。
SELECT TO_SMALLDECIMAL(7654321.89) "to smalldecimal" FROM DUMMY;
to smalldecimal
7654321.89
TO_SMALLINT
- TO_SMALLINT (value)
- 将 value 转换为 SMALLINT 类型。
SELECT TO_SMALLINT ('10') "to smallint" FROM DUMMY;
to smallint
10
TO_TIME
- TO_TIME (t [, format])
- 将时间字符串 t 转换为 TIME 类型。如果省略 format 关键字,转换将会使用 Date Formats 中说明的日期格式模型。
SELECT TO_TIME ('08:30 AM', 'HH:MI AM') "to time" FROM DUMMY;
to time
08:30:00
TO_TIMESTAMP
- TO_TIMESTAMP (d [, format])
- 将时间字符串 t 转换为 TIMESTAMP 类型。如果省略 format 关键字,转换将会使用 Date Formats中说明的日期格式模型。
SELECT TO_TIMESTAMP ('2010-01-11 13:30:00', 'YYYY-MM-DD HH24:MI:SS') "to timestamp" FROM DUMMY;
to timestamp
2010-01-11 13:30:00.0
TO_TINYINT
- TO_TINYINT (value)
- 将 value 转换为 TINYINT 类型。
SELECT TO_TINYINT ('10') "to tinyint" FROM DUMMY;
to tinyint
10
TO_VARCHAR
- TO_VARCHAR (value [, format])
- 将给定 value 转换为 VARCHAR 字符串类型。如果省略 format 关键字,转换将会使用 Date Formats中说明的日期格式模型。
SELECT TO_VARCHAR (TO_DATE('2009-12-31'), 'YYYY/MM/DD') "to char" FROM DUMMY;
to char
2009/12/31