[英]SQL Server: Select multiple records in one select statement
在这样的查询中:
SELECT *
FROM `Order`
WHERE `CustID` = '1'
我的结果显示如下:
| CustID| Order |
-----------------
| 1 | Order1|
| 1 | Order2|
| 1 | Order3|
-----------------
如何编写SQL语句,以获得类似这样的结果?:
| CustID| Order |
---------------------------------
| 1 | Order1, Order2, Order3|
---------------------------------
在mySQL中,可以使用Group_Concat
,但在SQL Server中,它会给出诸如语法错误之类的错误。
尝试这个。 根据需要更改表名和列名;
SELECT custID,
LISTAGG(Order, ', ') WITHIN GROUP (ORDER BY Order) text
FROM table_name
GROUP BY custID
编辑MSSQL。 您应该使用group_concat函数。
SELECT custID, GROUP_CONCAT(Order)
FROM table_name
WHERE CustID = 1
GROUP BY custID;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.