取最大日期

with s  as  (select max( g.date)  date ,g.name

from c_prod_day  g

where  g.date <= to_date('${rq}', 'yyyy-MM-dd')

group by g.name, g.date

)

select a.name , a.date,a.DVEL

from c_prod_day  a 

left join s b on b.name=a.name

where  a.date =b.date

and a.org_name='${qy}'

and a.DVEL is not null

group by a.name, a.DVEL ,a.date

如何让a.date取的是最大日期?比如现在是2023年3月2日,他是把小于2023年3月2日有数据都查询出来了。而我只需要有数据且最大的日期

SQL 用户G2632943 发布于 2023-3-2 16:54
1min目标场景问卷 立即参与
回答问题
悬赏:0 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
用户k6280494Lv6资深互助
发布于2023-3-2 16:59(编辑于 2023-3-2 17:22)

select a.name , a.date,a.DVEL

from c_prod_day 

where date in (select max(date) from c_prod_day where date <= to_date('${rq}', 'yyyy-MM-dd') group by name,DVEL)

and org_name='${qy}'

and DVEL is not null

group by name, DVEL,date

  • 2关注人数
  • 305浏览人数
  • 最后回答于:2023-3-2 17:22
    请选择关闭问题的原因
    确定 取消
    返回顶部