SQL Server ->> CONCAT函数

这是一个SQL Server 2012后引进的新函数。作用就如同它名字的意思。它对NULL值得处理是空字符串。当然它能做的不仅是对字符的支持。它支持N个列输入,列的类型支持更加完善。不过其实它的原理不过是把传入的数据用CONVERT函数转换成NVARCHAR类型。不信你传个XML或者SQL_VARIANT类型的数据进去,你会看到马上报错。错误提示是:

Msg 257, Level 16, State 3, Line 35
Implicit conversion from data type xml to nvarchar is not allowed. Use the CONVERT function to run this query.

至少我测试结果显示它对INT, FLOAT, DATETIME, NVARCHAR都是支持的。

测试脚本

WITH T AS
(
SELECT TOP 10
CAST(Num AS INT) AS int_fld,
CAST(Num AS NVARCHAR) AS str_fld,
CAST(Num AS FLOAT) AS flt_fld,
CAST(NULL AS NVARCHAR) AS NULL_FLD,
CAST(Num AS datetime) AS dt_fld
--CAST(Num AS sql_variant) AS var_fld,
--CAST(‘<a>aa</a>‘AS xml) AS xml_fld
FROM dbo.Numbers
)

SELECT CONCAT(int_fld,str_fld,flt_fld,NULL_FLD, dt_fld)
FROM  T
时间: 2024-10-11 17:42:37

SQL Server ->> CONCAT函数的相关文章

SQL Server DATEDIFF() 函数

Server Date 函数 定义和用法 DATEDIFF() 函数返回两个日期之间的天数. 语法DATEDIFF(datepart,startdate,enddate) startdate 和 enddate 参数是合法的日期表达式. datepart 参数可以是下列的值: datepart 缩写 年 yy, yyyy 季度 qq, q 月 mm, m 年中的日 dy, y 日 dd, d 周 wk, ww 星期 dw, w 小时 hh 分钟 mi, n 秒 ss, s 毫秒 ms 微妙 mc

SQL Server 聚合函数算法优化技巧

Sql server聚合函数在实际工作中应对各种需求使用的还是很广泛的,对于聚合函数的优化自然也就成为了一个重点,一个程序优化的好不好直接决定了这个程序的声明周期.Sql server聚合函数对一组值执行计算并返回单一的值.聚合函数对一组值执行计算,并返回单个值.除了 COUNT 以外,聚合函数都会忽略空值. 聚合函数经常与 SELECT 语句的 GROUP BY 子句一起使用. v1.写在前面 如果有对Sql server聚合函数不熟或者忘记了的可以看我之前的一片博客.sql server 基

13、SQL Server 自定义函数

SQL Server 自定义函数 在SQL Server中不仅可以使用系统函数(如:聚合函数,字符串函数,时间日期函数等)还可以根据需要自定义函数. 自定义函数分为标量值函数和表值函数. 其中,标量值函数用于返回单个值,而表值函数用于返回一个结果集. 函数参数 参数可以是常量.表中的某个列.表达式或其他类型的值.在函数中有三种类型的参数. 1.输入:指必须输入一个值. 2.可选值:在执行该参数时,可以选择不输入参数. 3.默认值:函数中默认有值存在,调用时可以不指定该值. 创建标量值函数 语法:

SQL Server 2000 函数使用---CAST 和 CONVERT

本文来自:http://www.cnblogs.com/xh831213/category/47654.html 将某种数据类型的表达式显式转换为另一种数据类型.CAST 和 CONVERT 提供相似的功能. 语法 使用 CAST: CAST ( expression AS data_type ) 使用 CONVERT: CONVERT (data_type[(length)], expression [, style]) 参数 expression 是任何有效的 Microsoft® SQL

Sql Server DateDiff 函数中interval的值

今天在工作中碰到了个问题,统计本周流量时,使用DateDiff函数由于w与week混淆产生统计结果出现错误 参数 interval的设定值如下: 值 缩 写(Sql Server) 说明 Year Yy 年 1753 ~ 9999 Quarter Qq 季 1 ~ 4 Month Mm或m 月1 ~ 12 Day of year Dy或d 一年的日数,一年中的第几日 1-366 Day Dd 日,1-31 Weekday Dw或w 一周的日数,一周中的第几日 1-7 Week Wk 周,一年中的

SQL SERVER 开窗函数简介

在SQL SERVER 2005/2008支持两种排名开窗函数和聚集开窗函数. 以SQL SERVER中分面页为例,按时间顺序列出定单号. WITH OrderInfo AS ( SELECT ROW_NUMBER() OVER(ORDER BY OrderDate) AS Number, OrderID,CustomerID, EmployeeID,OrderDate FROM Orders (NOLOCK) ) SELECT Number,OrderID,CustomerID, Employ

四个很好用的Sql Server 日期函数:DateDiff、DatePart、DateAdd、DateName

我以前查一段时间范围内的数据都是在程序里计算好日期再掉查询语句,现在我用下面的函数.SQL SERVER没有查一季度数据的函数. DateDiff函数: 描述 返回两个日期之间的时间间隔. 语法 DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear]]) DateDiff 函数的语法有以下参数: 参数 描述 interval 必选.字符串表达式,表示用于计算 date1 和 date2 之间的时间间隔.有关数值,请参

数据库开发基础-SQl Server 聚合函数、数学函数、字符串函数、时间日期函数

SQL 拥有很多可用于计数和计算的内建函数. 函数的语法 内建 SQL 函数的语法是: SELECT function(列) FROM 表 函数的类型 在 SQL 中,基本的函数类型和种类有若干种.函数的基本类型是: Aggregate 函数 Scalar 函数 合计函数(Aggregate functions) Aggregate 函数的操作面向一系列的值,并返回一个单一的值. 注释:如果在 SELECT 语句的项目列表中的众多其它表达式中使用 SELECT 语句,则这个 SELECT 必须使

SQL Server -- 自定义函数(学习总结,备忘)

SQL Server自定义函数,以前只在书上看过,没有动手去敲一敲,今天刚好接触到,看了几篇博文学习了下.做好备忘很重要!! (@[email protected])Y Learn from:http://www.cnblogs.com/lideng/archive/2013/04/15/3022418.html 自定义函数分为:标量值函数或表值函数两种. 标量值函数:如果 RETURNS 子句指定一种标量数据类型,则函数为标量值函数. 表值函数:如果 RETURNS 子句指定 TABLE,则函