如何优化ABAP查询



我有一个查询似乎工作正常,但我想知道是否有更干净(或更合适)的方法来编写它。

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

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

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 (必填列表)

相关内容

  • 没有找到相关文章

最新更新