Sybase LIST 函数在 256 个字符后截断结果

Sybase LIST function truncating results after 256 characters

我正在尝试将一列字符串聚合到一个单元格中,方法是使用 syabase 的 LIST 函数将它们连接在一起并用逗号分隔它们。但结果在 256 个字符后得到 t运行cated。有谁知道解决这个问题的方法,或者是否有任何替代方法可以满足我的需求。

例如,如果我有一个 table myTable 看起来像这样:

myVal
-------------
'0000000001'
'0000000002'
'0000000003'
'0000000004'
'0000000005'
'0000000006'
'0000000007'
'0000000008'
'0000000009'
'0000000010'
'0000000011'
'0000000012'
'0000000013'
'0000000014'
'0000000015'
'0000000016'
'0000000017'
'0000000018'
'0000000019'
'0000000020'
'0000000021'
'0000000022'
'0000000023'
'0000000024'
'0000000025'
'0000000026'
'0000000027'
'0000000028'
'0000000029'
'0000000030'

然后 运行 以下查询:

select list(myVal,',') as myResult from myTable

我得到以下结果

myResult
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
0000000001,0000000002,0000000003,0000000004,0000000005,0000000006,0000000007,0000000008,0000000009,0000000010,0000000011,0000000012,0000000013,0000000014,0000000015,0000000016,0000000017,0000000018,0000000019,0000000020,0000000021,0000000022,0000000023,000

注意结果字符串在 0000000023

之后得到 t运行

试试这个:

SELECT
    LIST( CAST( myVal AS nvarchar(max) ), ',' )
FROM
    myTable