首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为每行插入3个日期作为sql select语句的一部分

为每行插入3个日期作为sql select语句的一部分
EN

Stack Overflow用户
提问于 2021-11-12 06:02:19
回答 1查看 25关注 0票数 0

我有一个表-网站,我想计算过去3天每个网站的收入。此表没有日期列。

代码语言:javascript
复制
select distinct(website_id), cast( GETDATE() AS rundate ) from websites;

结果可能如下所示:

代码语言:javascript
复制
Website_Id    rundate
5             11-11-2021
7             11-11-2021

我使用上面的结果插入到一个参数化的sql查询中,该查询将查询如下所示的收入数据库:

代码语言:javascript
复制
select total_revenue from revenue where website_id = %{website_id}% and date > %{run_date} and date < DATEADD(day, -1, %{run_date})

我想在过去的3天里这样做。有没有办法在网站上获取select查询中的所有三个日期?预期结果:

代码语言:javascript
复制
Website_Id    rundate
5             11-11-2021
5             10-11-2021
5             09-11-2021
7             11-11-2021
7             10-11-2021
7             09-11-2021
EN

回答 1

Stack Overflow用户

发布于 2021-11-12 06:23:26

我相信您需要使用SQL中的MAX和GROUP BY函数。

我认为下面这样的方法可能会起作用:

代码语言:javascript
复制
SELECT Website_ID, MAX(RunDate) FROM websites
Where RunDate <= DATEADD(day,-3,GetDate())
Group By Website_ID
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69938579

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档