当前位置: 首页 > article >正文

ABAP SQL 取日期+时间最新的一条数据

我们在系统对接的时候,外部系统可能会推送多个数据给到我们。

我们 SAP 系统的表数据中日期和时间是作为主键的,那么如果通过 ABAP SQL 取到最新日期的最新时间呢。

解决方案:

方式 1:SELECT MAX

可以通过两个 SELECT MAX 来取得。

假设我们的表里存在这样的两条数据:

在这里插入图片描述
一条是 16:12:59 的时间,另一个时间是 14:09:01,而我们需要取到最新的票账比对的值:N

ABAP SQL 如下:

* Select MAX Date And Time

SELECT MAX( ztime ) AS ztime, 
  bukrs, 
  gjahr, 
  belnr, 
  buzei, 
  hkont, 
  zdate, 
  zzsctg2 
FROM ztinv_acc_diff
UP TO 1 ROWS
WHERE zdate = ( SELECT MAX( zdate ) FROM ztinv_acc_diff  )
GROUP BY bukrs, gjahr, belnr, buzei, hkont, zdate, ztime, zzsctg2
.

执行结果如下图:

在这里插入图片描述
另外,通过 ABAP 取出所有数据,存到内表,然后对内表排序取第一条也能实现相同的效果。

方式 2:SELECT ORDER

* Select MAX Date And Time

SELECT
  bukrs,
  gjahr,
  belnr,
  buzei,
  hkont,
  zdate,
  ztime,
  zzsctg2
FROM ztinv_acc_diff
UP TO 1 ROWS
ORDER BY zdate DESCENDING, ztime DESCENDING
.

运行结果:

在这里插入图片描述


http://www.kler.cn/a/442806.html

相关文章:

  • 【Rust】控制流
  • Elasticsearch入门学习
  • 【ROS2】☆ launch之Python
  • 力扣经典练习题之70.爬楼梯
  • Kafka 主题管理
  • docker-compose方式部署单机版RocketMQ
  • Next.js搜索引擎优化:框架级别的搜索引擎优化能力
  • 【Redis】Redis缓存击穿
  • (3)spring security - 认识PasswordEncoder
  • 大厂面试智力题大全(详细解题思路,持续更新)
  • 【map与set】—— 我与C++的不解之缘(二十二)
  • Redis内存淘汰策略有哪些
  • 算法刷题Day22:BM57 岛屿数量
  • UUG 深圳站 | Unity 6 新功能详细介绍和演示
  • 鸿蒙app封装 axios post请求失败问题
  • 《机器学习》3.7-4.3end if 启发式 uci数据集klda方法——非线性可分的分类器
  • 深度学习试题及答案解析(一)
  • linux minio安装
  • 网络编程中的黏包和半包问题
  • 【MySQL】优雅的使用MySQL实现分布式锁
  • Go语言后台实现选中式导出excel文件
  • 鸿蒙NEXT开发案例:颜文字搜索器
  • [bug] StarRocks borker load意向之外的bug
  • 《C 语言携手 PaddlePaddle C++ API:开启深度学习开发新征程》
  • SEO初学者-搜索引擎如何工作
  • 练习题:一维数组