0

我有一个名为“客户”的表,如下所示

ID         NAME
1001       MATHEW
1002       THOMAS
1003       ALEX
1004       ALBY

我需要使用 sql 查询在单个列中查看类似下面的数组的输出

输出如下

FORMAT_DATA
1001:MATHEW|1002:THOMAS|1003:ALEX|1004:ALBY|

我如何在 sl 查询中执行此操作

4

1 回答 1

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');

结果

|                                  DATA_FORMAT |
------------------------------------------------
| 1001:MATHEW|1002:THOMAS|1003:ALEX|1004:ALBY| |
于 2012-11-15T02:58:49.637 回答