我想把“dummy's”和“dock”这两个词拼接在一起。
我该如何在SQL Server 2005中进行拼接?它支持双引号吗?
我想把“dummy's”和“dock”这两个词拼接在一起。
我该如何在SQL Server 2005中进行拼接?它支持双引号吗?
试试这个:
DECLARE @COMBINED_STRINGS AS VARCHAR(50); -- Allocate just enough length for the two strings.
SET @COMBINED_STRINGS = 'rupesh''s' + 'malviya';
SELECT @COMBINED_STRINGS; -- Print your combined strings.
或者您可以将字符串放入变量中,例如:
DECLARE @COMBINED_STRINGS AS VARCHAR(50),
@STRING1 AS VARCHAR(20),
@STRING2 AS VARCHAR(20);
SET @STRING1 = 'rupesh''s';
SET @STRING2 = 'malviya';
SET @COMBINED_STRINGS = @STRING1 + @STRING2;
SELECT @COMBINED_STRINGS;
输出:
rupesh'smalviya
只需在您的字符串中添加一个空格作为分隔符即可。
因此,如果您有一张包含以下行的表:
firstname lastname
Bill smith
你可以像这样做:
select firstname + ' ' + lastname from thetable
而且你将会得到 "Bill Smith"
在2008年或之前连接两个字符串:
SELECT ISNULL(FirstName, '') + ' ' + ISNULL(SurName, '')
使用ISNULL是一个不错的选择,因为"String + NULL"运算会返回NULL。
还有一点需要注意:如果要连接字符串,应该使用CAST操作符。
SELECT 2 + 3
会给予5个
SELECT '2' + '3'
将会给出23。
DECLARE @COMBINED_STRINGS AS VARCHAR(50),
@STRING1 AS VARCHAR(20),
@STRING2 AS VARCHAR(20);
SET @STRING1 = 'rupesh''s';
SET @STRING2 = 'malviya';
SET @COMBINED_STRINGS = @STRING1 + @STRING2;
SELECT @COMBINED_STRINGS;
SELECT '2' + '3';
我在一个名为TEST.sql的 SQL 文件中输入了以下内容,并运行它,得到如下输出:
+-------------------+
| @COMBINED_STRINGS |
+-------------------+
| 0 |
+-------------------+
1 row in set (0.00 sec)
+-----------+
| '2' + '3' |
+-----------+
| 5 |
+-----------+
1 row in set (0.00 sec)
在进一步研究此问题后,我发现在SQL中进行字符串连接的最佳和可靠的方法是使用CONCAT方法。因此,我对同一文件进行了以下更改。
#DECLARE @COMBINED_STRINGS AS VARCHAR(50),
# @STRING1 AS VARCHAR(20),
# @STRING2 AS VARCHAR(20);
SET @STRING1 = 'rupesh''s';
SET @STRING2 = 'malviya';
#SET @COMBINED_STRINGS = @STRING1 + @STRING2;
SET @COMBINED_STRINGS = (SELECT CONCAT(@STRING1, @STRING2));
SELECT @COMBINED_STRINGS;
#SELECT '2' + '3';
SELECT CONCAT('2','3');
+-------------------+
| @COMBINED_STRINGS |
+-------------------+
| rupesh'smalviya |
+-------------------+
1 row in set (0.00 sec)
+-----------------+
| CONCAT('2','3') |
+-----------------+
| 23 |
+-----------------+
1 row in set (0.00 sec)
我正在使用的SQL版本是:14.14
我有一个简单的解决方案,可以从数据库表中选择数据并使您轻松操作。
SELECT b.FirstName + b.LastName FROM tbl_Users b WHERE b.Id='11'
如果你尝试一下,就可以很容易地在那里添加一个空格。
SELECT b.FirstName +' '+ b.LastName FROM Users b WHERE b.Id='23'
在这里,您可以组合尽可能多的表格。