SQL Server研习录(16)——STR()函数

SQL Server研习录(16)——STR函数


版权声明

  • 本文原创作者:清风不渡
  • 博客地址:https://blog.csdn.net/WXKKang

一、STR()函数

  返回由数字数据转换来的字符数据

1、基本语法

  基本语法如下:

STR(float_espression[,length[,decimal]])

  注释:
  (1)参数
  float_espression: 带小数点的近似数字(float)数据类型的表达式
  length: 总长度。它包括小数点、符号、数字以及空格。默认值为10
  decimal: 小数点后的位数。decimal必须小于或等于16。如果decimal大于16,则将结果截断为小数点右边的16位
  (2)返回类型
  varchar
  注: 如果提供length和decimal参数,则STR的length和decimal参数值应该是正数。在默认情况下或小数点参数为0时,数字舍入为整数。指定的长度应大于或等于小数点前面的部分加上数字符号(如果有)的长度。短的float_expression在指定长度内右对齐,长的float_expression则截断为指定的小数位数。例如,STR(12,10)生成结果是12,这在结果集中右对齐。而STR(1223,2)则将结果集截断为**(*的个数为length的大小)。可以嵌套字符串函数

2、示例

  示例一: 下面我们就使用STR()函数来更好的学习及解释上面的注释,代码如下

-- length和decimal参数值不为正数
PRINT 'length的值为负数,输出为空'
PRINT STR(12.22,-2,2)
PRINT 'decimal的值为负数,输出为空'
PRINT STR(12.22,2,-2)
PRINT 'length和decimal的值都为负数,输出为空'
PRINT STR(12.22,-2,-2)
-- decimal参数值为零
PRINT 'decimal参数值为零,数字舍入为整数'
PRINT STR(12.22,2)
-- 长度大于小数点前面的部分加上数字符号(如果有)的长度,右对齐
PRINT '长度大于小数点前面的部分加上数字符号(如果有)的长度,右对齐'
PRINT STR(12,10)
-- 长度小于小数点前面的部分加上数字符号(如果有)的长度,(*的个数为length的大小)
PRINT '长度小于小数点前面的部分加上数字符号(如果有)的长度,(*的个数为length的大小)'
PRINT STR(12222,2)
-- 嵌套字符串函数
PRINT '将数字转换为字符串后截取左边的4位'
PRINT LEFT(STR(123456,6),4)

  执行结果如下:
在这里插入图片描述

发布了92 篇原创文章 · 获赞 36 · 访问量 5132

猜你喜欢

转载自blog.csdn.net/WXKKang/article/details/104058755