如何将列值与单引号和sql中的逗号连接?
select tpaa_id from dbo.Sheet
where tpaa_id is not null
目前查询返回,值为..
ABC123
ABC456
我们有大约1000条记录。
我希望以
的形式返回'ABC123',
'ABC456',
答案 0 :(得分:4)
您可以使用变量进行连接:
declare @result nvarchar(max)
select @result = isnull(@result + ', ', '') + '''' + tpaa_id + ''''
from dbo.Sheet
where tpaa_id is not null
select @result
答案 1 :(得分:2)
使用此构造
SELECT CONCAT(CHAR(39), MyString ,CHAR(39)) FROM Table
return '<MyString>'
答案 2 :(得分:2)
要使用逗号获取值,请使用以下语句...
选择字段1 ||表名中的',';
答案 3 :(得分:1)
您可以使用查询
简单地连接列select ''''||tpaa_id||''''||',' from dbo.Sheet
where tpaa_id is not null;
答案 4 :(得分:0)
使用三个单引号进行串联
select 'insert into [LookUpModeofTransfer] values('''+Name+'''' +',1'+')' from
(SELECT name,isActive FROM [dbo].[LookUpModeofTransfer]
)a
答案 5 :(得分:0)
当我们在sql中执行字符串连接时
我们需要使用ISNULL
函数----------------
DECLARE @str1 NVARCHAR(20)
DECLARE @str2 NVARCHAR(20)
SET @str1 = NULL
SET @str2 = 'str2'
select @str1 + @str2
select ISNULL(@str1,'') + ISNULL(@str2,'')
答案 6 :(得分:0)
如果其SQL Server 2017及更高版本
SELECT STRING_AGG(QUOTENAME(tpaa_id,''''), ',') FROM dbo.Sheet
答案 7 :(得分:-1)
hi
'UPDATE LinkedMySQLDB.TableToUpdate AS a SET a.MySQLField=''updated'' WHERE a.ID IN (LocalMSSQLDB.LocalTable.ID) ;'
This is a string constant but you need a value for LocalMSSQLDB.LocalTable.ID.
Declare @ldb int;
set @ldb = select LocalMSSQLDB.LocalTable.ID
'UPDATE LinkedMySQLDB.TableToUpdate AS a SET a.MySQLField='' + value + '' WHERE a.ID IN (' + @ldb + ') ;'