ZHZHK001 2022-01-24 09:08 采纳率: 85.7%
浏览 31
已结题

sql语句 某单位最早出现某规格的日期作为新列

问题遇到的现象和发生背景

sql不会写

问题相关代码,请勿粘贴截图

select OCUSNAME , ODGSPEC , ODATE,…… 新列1, 系列2 from……

运行结果及报错内容
我的解答思路和尝试过的方法

做不来了

我想要达到的结果

OCUSNAME ODGSPEC ODATE……
公司名称 规格名称 日期……
表名 T1

结果
公司名称 规格名称 日期 ……新列1 新列2

新列1为:某公司最早出现某规格的日期
新列2为:新列1是否大于2021.05.01,Y ,N

  • 写回答

2条回答 默认 最新

  • DarkAthena ORACLE应用及数据库设计方案咨询师 2022-01-24 16:00
    关注

    mysql 8.0以上支持开窗函数

    first_value(ODATE) over(partition by OCUSNAME,ODGSPEC order by ODATE)  新列1,
    case when  first_value(ODATE) over(partition by OCUSNAME,ODGSPEC order by ODATE) > str_to_date('2021-05-01','%Y-%m-%d') then 'Y' else 'N' end 新列2
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月20日
  • 已采纳回答 4月12日
  • 创建了问题 1月24日