概述
Sybase IQ常用函数大全–数据类型转换函数
查询索引:
-
BIGINTTOHEX 函数:返回 VARCHAR(16) 中十进制整数的十六进制等效数字。
-
CAST 函数:返回转换为提供的数据类型的表达式的值。
-
CONVERT 函数:返回转换成提供的数据类型的表达式。
-
INTTOHEX 函数:返回十进制整数的十六进制等效数字。
-
ISNUMERIC 函数:测试字符串参数是否可以转换为数字。如果可以进行转换,则此函数返回 1;否则返回 0。如果参数为 NULL,则返回 0。
1. BIGINTTOHEX 函数
返回 VARCHAR(16) 中十进制整数的十六进制等效数字。
语法:
BIGINTTOHEX ( <integer-expression> )
解析:
参数 | 说明 |
---|---|
integer-expression | 要转换成十六进制的整数 |
- BIGINTTOHEX 接受取值为 BIGINT 的整数表达式并返回十六进制等效数字。返回值的左侧会附加零,最多可达 16 位数字。所有无标度的整数数据类型都将用作整数表达式。
- 如果需要,将会自动执行转换。仅当小数值为零时,才会截断常量。如果列中包含正小数位数值,则无法截断该列。如果转换失败,则 SAP IQ 返回错误,除非 CONVERSION_ERROR 选项为 OFF。在这种情况下,结果为 NULL。
示例:
-- 返回值 FFFFFFFFFFFFFFF7:
SELECT BIGINTTOHEX (-9) FROM iq_dummy
2. CAST 函数
返回转换为提供的数据类型的表达式的值。
语法:
CAST ( <expression> AS <data type> )
解析:
- 数字转字符串,字符串转数字。
参数 | 说明 |
---|---|
表达式(expression) | 要转换的表达式 |
data type | 表达式将要转换成的数据类型。显式设置数据类型或指定 %TYPE 属性以将数据类型设置为表或视图中列的数据类型或设置为变量的数据类型。 |
-
如果未指定字符串类型的长度,SAP IQ 将选择适当的长度。如果没有为 DECIMAL 转换指定精度和小数位数,数据库服务器会选择适当的值。
-
显式设置数据类型或指定 %TYPE 属性以将数据类型设置为表或视图中列的数据类型或设置为变量的数据类型。例如:
SELECT CAST( NULL AS NUMERIC ) A, CAST( NULL AS NUMERIC(15,2) ) B -- 说明为: A NUMERIC(1,0) B NUMERIC(15,2)
示例:
-- 以下函数确保字符串被用作日期:
CAST( '2000-10-31' AS DATE )
-- 表达式 1 + 2 的值,表达式将要转换成的数据类型。设置计算出的数据类型,并将结果转换为单字符字符串(即数据服务器分配的长度):
CAST( 1 + 2 AS CHAR )
-- 可以使用 CAST 函数缩短字符串长度:
SELECT CAST( lname AS CHAR(5) ) FROM Customers
3. CONVERT 函数
返回转换成提供的数据类型的表达式。
语法:
CONVERT ( <data-type>, <expression> [ , <format-style> ] )
解析:
- 这个转换常用来转换成指定的时间格式。
参数 | 说明 |
---|---|
data-type | 表达式将要转换成的数据类型。显式设置数据类型或指定 %TYPE 属性以将数据类型设置为表或视图中列的数据类型或设置为变量的数据类型。 |
表达式(expression) | 要转换的表达式。 |
format-style | 对于将字符串转换为日期或时间数据类型以及相反的转换过程,format-style 是描述要使用的日期格式字符串的样式代码编号。 |
CONVERT 格式样式代码输出如下:
不含世纪 (yy) | 含世纪 (yyyy) | 输出 |
---|---|---|
- | 0 或 100 | mmm dd yyyy hh:nnAM(或 PM) |
1 | 101 | mm/dd/yy[yy] |
2 | 102 | [yy]yy.mm.dd |
3 | 103 | dd/mm/yy[yy] |
4 | 104 | dd.mm.yy[yy] |
5 | 105 | dd-mm-yy[yy] |
6 | 106 | dd mmm yy[yy] |
7 | 107 | mmm dd, yy[yy] |
8 | 108 | hh:nn:ss |
- | 9 或 109 | mmm dd yyyy hh:nn:ss:sssAM(或 PM) |
10 | 110 | mm-dd-yy[yy] |
11 | 111 | [yy]yy/mm/dd |
12 | 112 | [yy]yymmdd |
- | 13或113 | dd mmm yyyy hh:nn:ss:sss(24 小时制,欧洲缺省时间 + 毫秒,4 位数年份) |
14 | 114 | hh:nn:ss(24 小时制) |
- | 20或120 | yyyy-mm-dd hh:nn:ss(24 小时制,ODBC 规范,4 位数年份) |
- | 21或121 | yyyy-mm-dd hh:nn:ss.sss(24 小时制,ODBC 规范加毫秒,4 位数年份) |
36 | 136 | hh:nn:ss.ssssssAM(或 PM) |
37 | 137 | hh:nn:ss.ssssss |
38 | 138 | mmm dd yy[yy] hh:nn:ss.ssssssAM(或 PM) |
39 | 139 | mmm dd yy[yy] hh:nn:ss.ssssss |
40 | 140 | [yy]yy-mm-dd hh:nn:ss.ssssss |
- | 365 | yyyyjjj(采用字符串或整数形式,其中 jjj 是一年中的儒略天数,范围为 1 到 366) |
CONVERT 格式样式表中日期分量的缩写和值:
缩写 | 日期分量 | 值 |
---|---|---|
hh | 小时 | 0 – 23 |
nn | 分钟 | 0 – 59 |
ss | 秒 | 0 – 59 |
sss | 毫秒 | 0 – 999 |
ssssss | 微秒 | 0 – 999999 |
mmm | 月 | 一月到十二月 |
dd | 日 | 1 – 31 |
yyyy | 年 | 0001 – 9999 |
mm | 月 | 1 – 12 |
4. INTTOHEX 函数
返回十进制整数的十六进制等效数字。
语法:
INTTOHEX ( <integer-expression> )
解析:
参数 | 说明 |
---|---|
integer-expression | 要转换成十六进制的整数。 |
- 数据库选项 ASE_FUNCTION_BEHAVIOR 指定 SAP IQ 函数(包括 INTTOHEX 和 HEXTOINT)的输出与 SAP ASE 函数的输出一致。ASE_FUNCTION_BEHAVIOR 的缺省值为 OFF。
5. ISNUMERIC 函数
测试字符串参数是否可以转换为数字。如果可以进行转换,则此函数返回 1;否则返回 0。如果参数为 NULL,则返回 0。
语法:
ISNUMERIC ( <string> )
解析:
参数 | 说明 |
---|---|
string | 要分析的字符串(分析目的是确定该字符串是否代表有效的数值) |
最后
以上就是幸福哑铃为你收集整理的Sybase IQ常用函数大全--数据类型转换函数的全部内容,希望文章能够帮你解决Sybase IQ常用函数大全--数据类型转换函数所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复