REPLACE()函数

语法:
replace(original-string,search-string,replace-string)

original-string: 被搜索的字符串,可为任意长度。 
search-string:   要搜索并被 replace-string 替换的字符串,该字符串的长度不应超过 255 个字节。
如果 search-string 是空字符串,则按原样返回原始字符串。 
replace-string:  该字符串用于替换 search-string,可为任意长度。
如果 replace-string 是空字符串,则删除出现的所有 search-string。 
用途:
在SQL Server SSRS报表中将文本字符按需求换行显示
<<expr>>=First(REPLACE(Fields!InspectLines.Value, chr(13), VbCrLf)) + VbCrLf

效果如下图所示:微信截图_20230419113107.png

SUM()函数

语法:
SUM([ALL | DISTINCT ] expression)

在这个语法中:

ALL指示SUM()函数返回包括重复项在内的所有值的总和。
默认情况下使用ALL。
DISTINCT指示SUM()函数计算唯一不同值的总和。
expression是返回精确或近似数值的任何有效表达式。
请注意,表达式中不接受聚合函数或子查询。
SUM()函数忽略NULL值。
(SUM ( CASE JobMtl.PartNum WHEN JobMtl.PartNum THEN PartWhse.OnHandQty ELSE PartWhse.OnHandQty END )) as [Calculated_OnHandQtys]
===>
(SUM ( CASE WHEN JobMtl.PartNum = JobMtl.PartNum THEN PartWhse.OnHandQty ELSE PartWhse.OnHandQty END )) as [Calculated_OnHandQtys]

条件匹配是则输出THEN后面的值,否则输出ELSE后面的值。
THEN和ELSE的数据类型需要相同,否则会报错。

Tips:
使用该表达式,配合Group By可以将多条数据聚合成一条数据。

CAST()函数

转载自:https://blog.csdn.net/qq_27918787/article/details/52593698

语法:
 
CAST (expression AS data_type)
 
参数说明:
 
expression:任何有效的SQServer表达式。
 
AS:用于分隔两个参数,在AS之前的是要处理的数据,在AS之后是要转换的数据类型。
 
data_type:目标系统所提供的数据类型,包括bigint和sql_variant,不能使用用户定义的数据类型。
注意事项:
 
(1).CAST()函数的参数是一个表达式,它包括用AS关键字分隔的源值和目标数据类型。以下例子用于将文本字符串'12'转换为整型:
 
SELECT CAST('12' AS int)
 
(2).返回值是整型值12。如果试图将一个代表小数的字符串转换为整型值,又会出现什么情况呢?
 
SELECT CAST('12.5' AS int)
 
(3).CAST()函数和CONVERT()函数都不能执行四舍五入或截断操作。由于12.5不能用int数据类型来表示,所以对这个函数调用将产生一个错误:
 
Server: Msg 245, Level 16, State 1, Line 1
 
Syntax error converting the varchar value
 
'12.5' to a column of data type int.
 
(4).要返回一个合法的数值,就必须使用能处理这个值的数据类型。对于这个例子,存在多个可用的数据类型。
如果通过CAST()函数将这个值转换为decimal类型,需要首先定义decimal值的精度与小数位数。
在本例中,精度与小数位数分别为9 与2。精度是总的数字位数,包括小数点左边和右边位数的总和。而小数位数是小数点右边的位数。
这表示本例能够支持的最大的整数值是9999999,而最小的小数是0.01。
 
SELECT CAST('12.5' AS decimal(9,2))
 
decimal数据类型在结果网格中将显示有效小数位: 12.50
 
(5).精度和小数位数的默认值分别是18与0。如果在decimal类型中不提供这两个值,SQL Server将截断数字的小数部分,而不会产生错误。
 
SELECT CAST('12.5' AS decimal)
 
结果是一个整数值:12

Right()函数

语法:
RIGHT ( input_string , number_of_characters )

作用:
从给定字符串的右侧提取多个指定数量的字符

举例:
RIGHT('SQL Server',6)
-- return 'Server'

Concat()函数

语法:
CONCAT ( input_string1, input_string2 [, input_stringN ] );

作用:
将多个字符串连接成一个字符串,仅SQLServer 2012及更高版本支持。

举例:
SELECT CONCAT('VAT',RIGHT(t.TAX,2),'%') FROM TABLE_1;
-- return 'VAT13%'

ISNULL()函数

-- 当数字和 NULL 相加时,结果会是 NULL。如果需要使该表达式的结果不为 NULL,则必须使用 ISNULL 函数或 COALESCE 函数将 NULL 值替换为 0 或其他值。
语法:
ISNULL(expression, value)

作用:
如果指定的表达式为NULL,则返回给定的值;如果指定的表达式不为NULL,则返回指定的表达式。

举例:
SELECT ISNULL(1,0)
-- RETURN 1
SELECT ISNULL(NULL,0)
-- RETURN 0

DATEADD()函数

SELECT DATEADD(second, 53571, '1970-01-01T00:00:00')
// 可以将数据库中的时间转换为正常的时间显示
文章作者: Sleny
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 咸鱼说
SQL SQL SSRS
喜欢就支持一下吧
打赏
微信 微信
支付宝 支付宝