【发布时间】:2020-06-15 16:53:04
【问题描述】:
我正在尝试对 T-SQL 中的地址执行字符串聚合,以便在逗号分隔的字符串中使用任何非 NULL 的地址字段。我知道如何在 C# 中执行此操作,但对 SQL 感到迷茫。
这是我目前所拥有的(我需要将 C# 部分转换为 SQL):
SELECT STRING_AGG
(
--Start of C# (I don't know how to convert this into SQL).
new[]
{
Addresses.Line1,
Addresses.Line2,
Addresses.Line3,
Addresses.City,
Addresses.County,
Addresses.State,
Countries.Name,
Addresses.Postcode
}
.Where(data => data != null)
--End of C#
,
', '
) Address
FROM Addresses
JOIN Countries ON Countries.Id = Addresses.CountryId
【问题讨论】:
-
尝试 DBNull.Value 而不是 null。
-
@jdweng 这里的问题是关于 TSQL 的; C# 纯粹是为了表达意图
标签: c# sql tsql initialization string-aggregation