繁体   English   中英

如何优化ABAP查询

[英]How to optimize ABAP query

我有一个看起来工作正常的查询,但我想知道是否有更清洁(或更合适)的方式来编写它。

目标是在表ZVBAPIUSW01中找到记录,其中日期(UPDPASS)和时间(UPDPASSTIME)是基于给定用户ID的最大值。

这是我到目前为止所得到的:

SELECT SINGLE * FROM ZVBAPIUSW01
  WHERE OBJID = ID
  AND UPDPASS IN (
    SELECT MAX( UPDPASS ) FROM ZVBAPIUSW01 WHERE OBJID = ID )
  AND UPDPASSTIME IN (
    SELECT MAX( UPDPASSTIME ) FROM ZVBAPIUSW01 WHERE OBJID = ID AND UPDPASS IN (
      SELECT MAX( UPDPASS ) FROM ZVBAPIUSW01 WHERE OBJID = ID ) ).

谢谢你的帮助。 麦克风

你可以试试

SELECT foo bar baz
  FROM ZVBAPIUSW01 UP TO 1 ROWS
  INTO (l_foo, l_bar, l_baz)
  WHERE OBJID = ID
  ORDER BY updpass DESCENDING updpasstime DESCENDING.

不要使用Select *而是使用Select(必填列表)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM