我有一个名为“客户”的表,如下所示
ID NAME
1001 MATHEW
1002 THOMAS
1003 ALEX
1004 ALBY
我需要使用sql查询在单个列中看到类似下面的数组输出
如下所示
FORMAT_DATA
1001:MATHEW|1002:THOMAS|1003:ALEX|1004:ALBY|
我如何在sl查询中执行此操作
答案 0 :(得分:0)
您可以使用FOR XML
<强>查询强>:
select
(
select RIGHT(ID,10) + ':' + NAME + '|'
from Customer
for xml path(''), type
).value('.','nvarchar(max)') DATA_FORMAT;
数据强>:
CREATE TABLE Customer (
ID int, NAME varchar(20));
INSERT Customer VALUES
(1001, 'MATHEW'),
(1002, 'THOMAS'),
(1003, 'ALEX'),
(1004, 'ALBY');
<强> Results 强>:
| DATA_FORMAT |
------------------------------------------------
| 1001:MATHEW|1002:THOMAS|1003:ALEX|1004:ALBY| |