MSSQL 中将数字转换为字符串
2012-04-16 20:31
183 查看
STR
由数字数据转换来的字符数据。语法
STR ( float_expression [ , length
[ , decimal ] ] )
参数
float_expression
是带小数点的近似数字 (float) 数据类型的表达式。
length
是总长度,包括小数点、符号、数字或空格。默认值为 10。
decimal
是小数点右边的位数。
返回类型
char
注释
如果为 STR 提供 length 和 decimal 参数值,则这些值应该是正数。在默认情况下或者小数参数为 0 时,数字四舍五入为整数。指定长度应该大于或等于小数点前面的数字加上数字符号(若有)的长度。短的
float_expression 在指定长度内右对齐,长的 float_expression 则截断为指定的小数位数。例如,STR(12,10) 输出的结果是 12,在结果集内右对齐。而 STR(1223, 2) 则将结果集截断为 **。可以嵌套字符串函数。
说明 若要转换为 Unicode 数据,请在 CONVERT 或 CAST 转换函数内使用 STR。
示例
A. 使用 STR
下例将包含五个数字和一个小数点的表达式转换为有六个位置的字符串。数字的小数部分四舍五入为一个小数位。
SELECT STR(123.45, 6, 1) GO
下面是结果集:
------ 123.5 (1 row(s) affected)
当表达式超出指定长度时,字符串为指定长度返回 **。
SELECT STR(123.45, 2, 2) GO
下面是结果集:
-- ** (1 row(s) affected)
即使数字数据嵌套在 STR内,结果集也是带指定格式的字符数据。
SELECT STR (FLOOR (123.45), 8, 3) GO
下面是结果集:
-------- 123.000 (1 row(s) affected)
B. 使用 STR 和 CONVERT 函数
下例比较 STR 和 CONVERT 的结果。
SELECT STR(3.147) AS 'STR', STR(3.147, 5, 2) AS '2 decimals', STR(3.147, 5, 3) AS '3 decimals' GO
下面是结果集:
STR 2 decimals 3 decimals ---------- ---------- ---------- 3 3.15 3.147 (1 row(s) affected) -- Use CONVERT. SELECT CONVERT(char(1), 3.147) AS 'CHAR(1)', CONVERT(char(3), 3.147) AS 'CHAR(3)', CONVERT(char(5), 3.147) AS 'CHAR(5)' GO
下面是结果集:
CHAR(1) CHAR(3) CHAR(5) ------- ------- ------- (null) (null) 3.147 (1 row(s) affected)
相关文章推荐
- js中将字符串转换成数字
- js中将字符串转换成数字以便运算
- C语言中将数字转换为字符串的方法
- C语言中将字符串转换为数字的方法
- postgresql中将数字转换为字符串前面会多出一个空格
- Freemarker中将字符串转换为数字number
- C语言中将字符串转换为数字的方法
- C语言中将数字形式的字符串转换为数字的方法
- js中将字符串转换成数字
- C语言中将数字转换为字符串的方法
- C语言中将数字转换为字符串的方法
- 在MSSQL中将数字转换成中文
- C语言中将数字转换为字符串的方法
- Linq to SQL 中将数字转换为字符串
- C语言中将数字转换为字符串的方法
- 如何将十六进制字符串转换为数字
- 数字和字符串之间的转换
- SQL-数据库函数mssql-数字到英文金额转换
- 字符串转换为数字-Java版
- perl 数字<->字符串及其进制间的转换