(NOT) IN CDS 定义中的值过滤器列表

(NOT) IN list of values filter in CDS definitions

我很想知道 CDS 视图是否有任何类似于 SQL 的 in ('value1', 'value2') 的过滤器命令。 CDS 视图不直接支持它,但大多数 SQL 版本(包括 Open SQL)都支持它。我总是可以通过写出长 is 或 Field = 'value1' OR Field = 'value2' 来检查,但如果存在这样的语法,我更愿意使用较短的语法。

打开 SQL 我正在努力实现的示例:

Select * 
  from customers 
  where customer_group in ( 'group1', 'group2' )
  into table @lt_table.

在 ABAP CDS 中,可能不是。

以下是 ABAP 7.53 documentation 中可能的运算符:

  • =<><><=>=
  • BETWEEN
  • LIKE
  • IS NULL
  • IS INITIAL

(还有布尔运算符NOT

据我所知,S/4HANA 中的 CDS 视图始终使用 OR