sqlserver 字符串拼接数值类型变量
时间: 2024-07-17 10:00:26 浏览: 227
SqlServer存储过程实现及拼接sql的注意点
在SQL Server中,当你需要将字符串和数值类型的变量拼接在一起时,可以使用`+`运算符或者`CONCAT()`、`STRING_AGG()`等函数。以下是基本的拼接方法:
1. **使用`+`运算符**:
```sql
DECLARE @num INT = 123;
DECLARE @str VARCHAR(10) = 'Hello';
SELECT CONCAT(@str, ' ', @num); -- 输出 "Hello 123"
```
2. **使用`CONCAT()`函数**:
```sql
SELECT CONCAT(@str, ' ', CAST(@num AS VARCHAR)); -- 同上,将数值转换为字符串
```
3. **使用`STRING_AGG()`函数(适用于SQL Server 2016及以上版本)**:
如果你想在一个集合或表中拼接值,`STRING_AGG()`更合适,但这里示例仅限单个值:
```sql
SELECT STRING_AGG(@str + ' ' + CAST(@num AS VARCHAR), ' ') -- 同样得到 "Hello 123"
```
记得,在使用数值类型变量时,可能需要将其转换为字符串类型,以便正确地与其他字符串进行拼接。如果你不确定变量的类型,使用`CAST()`或`CONVERT()`函数进行转换。
阅读全文