如何向根添加属性

How can I add an attribute to the root

有什么方法可以将 StartDateEndDate 变量添加到报告节点?我试图在 ROOT('Report') 之后添加 select @StartDate as 'StartDate',@EndDate as 'StartDate',但是 returns 结果不同。

正在寻找这样的东西?

<Report>
<StartDate>03/01/2022</StartDate>
<EndDate>03/30/2022</EndDate>
  <Member>
    <UserActivityLogID>179</UserActivityLogID>
    <LogDate>03/10/2022</LogDate>
  </Member>
  <Member>
    <UserActivityLogID>180</UserActivityLogID>
    <LogDate>03/10/2022</LogDate>
  </Member>
</Report>

sp

 IF @StartDate IS NULL 
        BEGIN
            SET @StartDate = DateAdd(dd, -90, GetDate())
        END
    IF @EndDate IS NULL
        BEGIN
            SET @EndDate = GetDate()
        END
    BEGIN
        SELECT [UserActivityLogID]
              ,LogDate =Convert(varchar(10),[LogDate],101)
          and LogDate BETWEEN @StartDate AND @EndDate
          FROM [UserActivityLog]
          order by LogDate desc
        FOR XML PATH('Member'),
        ROOT('Report')
    END

在没有有意义的样本数据和预期结果的情况下,您最好的猜测是:

SELECT UserActivityLogID AS [Member/UserActivityLogID],
       @StartDate AS [@StartDate],
       @EndDate AS [@EndDate]
FROM dbo.YourTable --You didn't even have a from in your query
WHERE --This was also missing
      LogDate >= @StartDAte
  AND LogDAte <= @EndDate
FOR XML PATH ('Report');