我正在研究SSRS报告。
我有一个问题,ssrs-expression中+
和&
之间有什么区别?
请用简短的例子分享您的答案。感谢。
答案 0 :(得分:1)
来自Visual Studio中的SSRS运算符说明:
+
添加两个数字。也用于连接两个字符串。
示例:
=Fields!NumberCarsOwned.Value + 2
/* if NumberCarsOwned=10, result: 10 + 2 = 12 */
=Fields!String1.Value + Fields!String2.Value
/* if String1='curious' and String2 ='guy', result: 'curiousguy' */
="4" + 5
/* result: 9, implicit conversion of the first expression */
="a" + 5
/* error: incorrect input string format */
="a" + CStr(5)
/* result: a5 */
="a" + Str(5)
/* result: a 5, space between 'a' and '5' */
&
生成两个表达式的字符串连接。
示例:
=Fields!FirstName.Value & Fields!LastName.Value
/* if FirstName='curious' and LastName='guy', result: 'curiousguy' */
=4 & 5
/* it's concatenation anyway, result: 45 */
=CInt(4) & CInt(5)
/* even explicit cast to integer it's concatenation anyway, result: 45 */
另一个有用的运算符是And
(逻辑/按位AND),这可能有助于解决某些任务。
示例:
=4 And 5
/* result: 4, since 4 (100 binary) And 5 (101 binary) = 4 (100 binary) */
="4" And "5"
/* result: 4 */
="a" And "b"
/* error: incorrect input string format */
答案 1 :(得分:0)
实际上它取决于你将如何使用它们。
1.。)用于连接目的
根据MSDN:
&
和+
进行连接将导致相同的行为或输出。它只会连接两个字符串。示例:
= 1 & 2
输出: 12
= "1" + "2"
输出: 12
2.)出于算术目的
+
进行算术会将两个数字加在一起示例:
= 1 + 2 //(using two numbers)
输出: 3
= 1 + "2" //(using a number and a number with quotes)
输出: 3
---------------------------------------------- --------------------------
<强>例外强>
现在有一个例外,即整数和字符串混合在一起或与其他类型混合
示例:
= 1 + "two"
输出: #Error
- &gt;这是因为它们彼此不相容。
示例:
= CSTR(1) + "two"
输出: 1two
根据您的需要,您还可以使用其他conversion functions。