SQL查询未返回预期结果
我有一个表SQL查询未返回预期结果,sql,sql-server,json,Sql,Sql Server,Json,我有一个表DelieveryCalendarMaster,其中包含以下数据: 现在,我正在使用此查询选择记录: select * from [dbo].[DelieveryCalendarMaster] for json auto 它返回一个JSON结果,如下所示: 我想合并相同日期的对象,如下所示: 可能是这样的。因此,将groupby与JSON子查询一起使用 SELECT t1.date, ( SELECT t2.id, t2.TimeSlot
DelieveryCalendarMaster
,其中包含以下数据:
现在,我正在使用此查询选择记录:
select *
from [dbo].[DelieveryCalendarMaster]
for json auto
它返回一个JSON结果,如下所示:
我想合并相同日期的对象,如下所示:
可能是这样的。因此,将
groupby
与JSON
子查询一起使用
SELECT t1.date,
(
SELECT t2.id, t2.TimeSlot
FROM DelieveryCalendarMaster t2
WHERE t2.date = t1.date
FOR json auto
) as 'row'
FROM tab DelieveryCalendarMaster t1
GROUP BY t1.date
FOR json auto
实际上,它将返回数组包装器中的行数组,但是,如果是数组,则要将其删除。您可以尝试此操作,它将对您有所帮助
SELECT [Date],
(SELECT [Date],[TimeSlot],[Availability],[DisplayText]
FROM [dbo].[DelieveryCalendarMaster] a
WHERE a.[Date] = e.[Date]
FOR JSON AUTO
) as Slots
FROM [dbo].[DelieveryCalendarMaster] e
Group BY e.[Date]
FOR JSON PATH, ROOT ('Dates')
您想如何合并?其他领域会发生什么?您可以通过在SQL中使用
groupby
语句来实现这一点。但是,您仍然需要决定如何聚合相应的数据