【问题标题】:Check if values in an array exist in another array using sql使用sql检查数组中的值是否存在于另一个数组中
【发布时间】:2020-09-29 23:34:59
【问题描述】:

如果我们在一个数组中有一些值存在于另一个数组中,我想执行一些操作。以下是我试图处理数组的代码的一部分。我有 2 个数组 CL_NM[ ] 和 CL_NM_FIN[ ]。如果 CL_NM[ ] 中的值在 CL_NM_FIN[ ] 中不存在,我想执行更新。请帮助我如何修改我的代码。

在尝试执行此操作时,我得到该列已存在错误,因为 for 循环在进入 else 条件之前没有遍历 CL_NM_FIN[ ] 中的所有元素。

【问题讨论】:

    标签: sql arrays sap hana


    【解决方案1】:

    我能够使用以下方法解决此问题:

        DO 
    BEGIN
        DECLARE arr1 TINYINT ARRAY = ARRAY(1,2,3,4);
        DECLARE arr2 INTEGER ARRAY = ARRAY(1,2);
    
    
    --convert array in table rst1 with column name col1
        rst1 = UNNEST(:arr1) as (COL1);
    --convert array in table rst2 with column name col1 
        rst2 = UNNEST(:arr2) as (COL1);
    --query with minus
        select  col1 from :rst1  
                  minus
        select col1 from :rst2;
    END;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-06-09
      • 2017-02-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-08
      • 1970-01-01
      相关资源
      最近更新 更多