如何删除 select 查询中的最后一个逗号

How to remove the last comma in select query

我正在尝试构建一个列,我想在另一个子查询中将其用作 in 子句,因此我尝试为值添加引号和逗号,但我找不到摆脱 last 的方法我的结果集中的逗号

    select ((''''+(SUBSTRING(DESCRIPTION,29,8))+''''+',')
    from  Table1
    where STACK is null

我的结果:

Data
'84259020',
'84259021',
'84259022',
'84259023',

预期结果:

Data
'84259020',
'84259021',
'84259022',
'84259023'

您可以尝试的一个简单解决方案是在您的值之前而不是之后附加逗号,然后用 stuff 包裹结果,例如

select Stuff(',a,b,c,d',1,1,'')

Result a,b,c,d

使用STRING_AGG

SELECT STRING_AGG(QUOTENAME(SUBSTRING(DESCRIPTION,29,8), ''''), ',')
FROM Table1
WHERE STACK IS NULL;

db<>fiddle demo