直接在SELECT中使用COALESCE从另一个表返回逗号分隔值

时间:2015-06-17 14:16:14

标签: sql sql-server sql-server-2008

我正在尝试检索产品的逗号分隔产品类别列表。

以下是我想要做的事情:

SELECT *, (
  SELECT CategoryName 
  FROM ProductCategories pc 
  WHERE p.ProductId=pc.ProductId) as ProductCategories
FROM Products p

我需要将产品类别放在以逗号分隔的列表中。有没有办法使用COALESCE?

1 个答案:

答案 0 :(得分:1)

不,你不能使用COALESCE来做到这一点。 COALESCE只返回传递它的第一个非null参数。

您需要How to create a SQL Server function to "join" multiple rows from a subquery into a single delimited field?