标签归档:convert应用

mssql sqlserver convert同money和smallmoney的用法举例说明


摘要:
下文通过示例的方式讲述sqlserver中对money类型转换为带逗号的金额类型,如下所示:
实验环境:sql server 2008 R2


我们经常接触到一些需求,
用户需要我们将金额转换为三位数字带一下逗号,方便财务进行区分,通常我们会在程序代码进行处理,
下文将讲述使用sqlserver原生态的convert转换输出带逗号金额数值的方法分享,如下所示:

convert转换函数说明:
convert语法说明:
convert(data_type,expression[,style])

参数说明:
data_type:
转换后的数据类型
expression:
有效的数据表达式
style:
expression所涉及的整数表达式,确认转换后的data_type的类型

money及smallmoney style参数说明:
style :
0(缺省值),小数点左侧数字,不使用逗号分隔,小数点后取两位小数
style:
1:小数点左侧数字,每三位数字使用逗号分隔,小数点取两位小数
style:
2:小数点左侧数字,不使用逗号分隔,小数点后取四位小数
style:
其它大于2的数字(126除外),都会采用style为1的方式进行转换
style:
126 等同于style为2的形式


例:

    declare @maomao365A money 

set @maomao365A = 186801.98812323 
 
print convert(varchar(100),@maomao365A,0)
print convert(varchar(100),@maomao365A,1)
print convert(varchar(100),@maomao365A,2)
print convert(varchar(100),@maomao365A,3)
print convert(varchar(100),@maomao365A,4)
金额逗号

sqlserver中convert输出带逗号的金额数值

mssql sqlserver 使用convert/cast截取字符串的方式分享


摘要:
下文讲述从字符串开始位置截取字符串的另类方式,
此方法主要使用 convert 或cast 将字符串转换为指定数据格式的方式来截取字符串的方式


例:截取表test中字段info的前三位字符,方法如下所示:
使用convert 或cast 将字符串转换为nvarchar(3)位,使其只截取3个字符串

create table test
(keyId int identity,
 info  varchar(100)
 )
 insert into test 
 (info)values
 ('maomao365.com'),
 ('猫猫小屋') ,
 ('sql_教程')
 
 select keyId,CONVERT(nvarchar(2),info) as info ,
 CAST(info as nvarchar(3)) as infonew 
  from test 
 
 truncate table test
 drop     table test 
mssql_sqlserver_截取字符串的另类方式_格式转换分享

mssql_sqlserver_截取字符串的另类方式_格式转换分享