SAP-ABAP-SQL--年和月分开的列取最大年月的语句
在实际开发报表过程中,可能会使用到某个表里的最大年最大月甚至最大版本的一行数据,年月不在一起,如下图
其他表想根据物料编码找最大年月甚至最大版本的销售计划数量。
1、找最大年月的某物料的销售数量
SELECT * INTO TABLE @DATA(LT_ZTSD119_PIE) FROM ZTSD119_PIE WHERE MATNR IN @S_MATNR AND GJAHR = ( SELECT MAX( GJAHR ) FROM ZTSD119_PIE ) AND MONAT = ( SELECT MAX( MONAT ) FROM ZTSD119_PIE WHERE GJAHR = ( SELECT MAX( GJAHR ) FROM ZTSD119_PIE ) )."取最大年月的PIE导入数据
相当于月份的话等于最大年份最大的月份,年份等于最大的年份。
2、找最大年月的物料的销售数量
SELECT MATNR,GJAHR,MONAT,CONCAT( GJAHR,MONAT ) AS ZNY,VRSIN,SUM( MENGE ) AS SUMMENGE FROM ZTSD041 AS A WHERE NOT EXISTS ( SELECT 1 FROM ZTSD041 AS B WHERE B~VRSIN > A~VRSIN AND B~MATNR = A~MATNR AND B~GJAHR = A~GJAHR AND B~MONAT = A~MONAT ) AND MATNR IN @S_MATNRS GROUP BY GJAHR ,MONAT, VRSIN,MATNR ORDER BY MATNR,GJAHR, MONAT,VRSIN INTO TABLE @DATA(LT_ZTSD041_ALL_GET).
理解为先找出所有数据,再根据not exist里的语句找有没有版本比当前数据行版本更高的,有就不要了,没有就保留。
分类:
SAP-ABAP
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架