SQL QUOTENAME 添加单引号和逗号

Posted

技术标签:

【中文标题】SQL QUOTENAME 添加单引号和逗号【英文标题】:SQL QUOTENAME adding single quotes and a comma 【发布时间】:2014-05-13 15:37:03 【问题描述】:

我有一个输出的基本表。

field1
  a
  b
  c

然后我想添加单引号和逗号,所以目前我有一个简单的 QUOTENAME。

QUOTENAME(field1,'''')

输出以下结果。

field1
  'a'
  'b'
  'c'

但我不知道如何让 QUOTENAME 输出这样的结果。

field1
  'a',
  'b',
  'c',

【问题讨论】:

【参考方案1】:

试试:

QUOTENAME(field1,'''')+','

【讨论】:

完美!将在 12 分钟内勾选为最佳答案!【参考方案2】:

我知道你得到了你的答案,但如果其他人看到这个并想知道如何去掉最后一个值之后的最后一个逗号,以防他们使用结果集进行动态查询,我只是想补充一下。

Declare @MyString nvarchar(max)
select @MyString += QuoteName (field1.'''') + ','
from YourTable Name

Set @MyString = left (@MyString, Len ( @MyString) - 1 )

并查看结果一个

Print @MyString 

可以添加来评估结果。

希望这有助于其他人在使用引号名称并需要删除最后一个逗号时寻找这个逻辑:-)

【讨论】:

【参考方案3】:

那行不通 你没有初始化@MyString 所以用 null 连接任何东西都是 null

但是使用这种方法你不需要初始化它

DECLARE @MyString NVARCHAR(MAX)
SELECT  @MyString = COALESCE(@MyString+ ',', '') + QUOTENAME(field1, '''') 
FROM    YourTable Name

【讨论】:

以上是关于SQL QUOTENAME 添加单引号和逗号的主要内容,如果未能解决你的问题,请参考以下文章

何时/为啥要在 SQL 中使用 QUOTENAME?

SQL Server 查询编辑器打出来的逗号和单引号错误,不知道咋回事,求大神帮助

通过 sql developer 导入 csv 时,单引号被转换为 2 个单引号

如何使用Java为列表中的每个字符串添加或插入'(单引号),其中字符串用逗号分隔

Postgresql regex_replace 逗号,单引号和双引号

数组转字符串(属性加单引号,逗号分隔)