Sql Server的问题,查询结果放一行逗号隔开求解!

表里数据如上图

我写的语句

select pid from table001 where id =1

需求是把这仨列东西放一格:0,1,2这样的

我在网上找了资源,代码是这样的:

select
    concat(pid,',',pid) pid
FROM
    table001 where id=1

不是要求的效果哦~

我需要三行全拼一行,只有个0,1,2啊,跪求大神解惑

select id from t a
cross apply(
    select stuff((
        select ','+convert(varchar,pid)
        from t
        where id=a.id
        for xml path('')
    ),1,1,'') as pid
)