Sql 希望在相同的结果中显示7天数据和30天数据的日期范围

Sql 希望在相同的结果中显示7天数据和30天数据的日期范围,sql,date-range,Sql,Date Range,我有一个连接两个表的查询,该表查找当前有效的成员id的名称。我试图做的是使用相同的查询显示数据,为一个成员在一行中生成7天和30天的值 我是这么想的 Member Name | Metric 1 (7 days) | Metric 2 (7 days) | Metric 3 (7 Days)| Metric 1 (30 days) | Metric 2 (30 days) | Metric 3 (30 days) 那么,像这样的事情 SELECT MemberName, M

我有一个连接两个表的查询,该表查找当前有效的成员id的名称。我试图做的是使用相同的查询显示数据,为一个成员在一行中生成7天和30天的值

我是这么想的

Member Name | Metric 1 (7 days) | Metric 2 (7 days) | Metric 3 (7 Days)| Metric 1 (30 days) | Metric 2 (30 days) | Metric 3 (30 days) 

那么,像这样的事情

SELECT  MemberName,
        MIN(CASE WHEN SomeDate BETWEEN DATEADD(DAY,-7,GETDATE()) AND GETDATE() THEN [Metric 1] END) [Metric 1 (7 days)],
        MIN(CASE WHEN SomeDate BETWEEN DATEADD(DAY,-7,GETDATE()) AND GETDATE() THEN [Metric 2] END) [Metric 2 (7 days)],
        MIN(CASE WHEN SomeDate BETWEEN DATEADD(DAY,-7,GETDATE()) AND GETDATE() THEN [Metric 3] END) [Metric 3 (7 days)],
        MIN([Metric 1]) [Metric 1 (30 days)],
        MIN([Metric 2]) [Metric 2 (30 days)],
        MIN([Metric 3]) [Metric 3 (30 days)]
FROM YourTable
WHERE SomeDate BETWEEN DATEADD(DAY,-30,GETDATE()) AND GETDATE()
GROUP BY MemberName

如果您提供一些示例数据,然后提供一个示例所需的输出,您很可能会得到一个好的答案。