标签归档:字符串函数

mssql sqlserver CONCAT_WS 字符串函数 功能简介及举例说明


摘要:
下文讲述concat_ws函数的用法,
实验环境:sqlserver 2017


CONCAT_WS 语法及功能简介

CONCAT_WS ( separator, argument1, argument1 [, argumentN]… )
———————————————-
参数说明:
separator:
此参数需为:char 、nchar、nvarchar、varchar类型
此参数的作用作为后面字符串的分隔符
argument1, argument1 [, argumentN]:
任意类型的表达式
———————————————-
返回值说明:
字符串

注意事项:
concat_ws在合并字符串时,会忽略null值的字符串



CONCAT_WS 举例说明

---concat_ws用法举例1
SELECT CONCAT_WS('-','星期一', NULL, NULL, '测试', 'test', 8888) AS infotest;

---concat_ws用法举例2
create table test
(keyId int identity(1,1),info1 varchar(20),info2 varchar(30))
go
insert into test (info1,info2)values('测试1','测试信息2')
insert into test (info1,info2)values('测试3','测试信息6')
insert into test (info1,info2)values(null,'测试信息10')
go

select concat_ws('-',keyId,info1,info2) from test 
go


truncate table test 
drop     table test 

mssql sqlserver 2012函数format功能简介


摘要:
sqlserver format函数是sqlserver2012中,新提供的函数,
此函数使用方法类似c#中的format,
下文将举例说明,format函数的用法
实验环境:sqlserver 2012


/*
format说明:
C:	货币
D:	十进制	
E:	科学计数法
G:	常规
N:	用分号隔开的数字
X:	十六进制
类似c#的format用法
....
*/
select format(12,'X','zh-cn') as 将12转换为十六进制
select format(9888,'N') as [逗号隔开]
select format(200,'G') as [常规]
select format(200,'E') as [科学计数法]
select format(32,'D') as [十进制]
select format(32,'C','zh-cn') as [货币],format(32,'C','en-US') as [货币美元]
select format(GETDATE(),'yyyy年MM月dd日') as 当前日期  

---日期转换为毫秒 
SELECT FORMAT(GETDATE(),'yyyyMMddHHmmssfff') as [日期毫秒]

mssql sql server 实现concat函数的方法


摘要:
下文将讲述sql server 如何实现concat功能


目录
concat功能简介
concat应用简介



concat功能简介

concat函数存在于mysql oracle数据库中,在sql server数据库中,没有这个函数,
concat函数主要功能为字符串叠加操作,可以将两个或多个字符串依次叠加为一个新的字符串



concat应用简介

由于sql server中没有concat函数,所以我们在mssql中叠加字符串需要使用+将字符串相加

例:

 create table #t(keyId varchar(20),name varchar(30))

 insert into #t(keyId,name)values('a','b')
 insert into #t(keyId,name)values('c','d')
 insert into #t(keyId,name)values('e','f')
 insert into #t(keyId,name)values('g','h')
 insert into #t(keyId,name)values('i','j')
 
 select keyId,name, convert(varchar(20),keyId)+convert(varchar(30),name) from #t 

  

 truncate table #t
 drop table #t