-1

I have two cursors as below:

EXEC SQL                                      
     DECLARE C1 CURSOR FOR               
     SELECT  DISTINCT FIELD_1                  
     FROM    TABLE                  
     WHERE   FIELD_2 BETWEEN :MAX_DATE
                        AND '9999-12-31'      
           AND   FIELD_3 =  :VALUE 
     WITH UR                                  
     FOR FETCH ONLY                           
END-EXEC

EXEC SQL                                      
     DECLARE C2 CURSOR FOR               
     SELECT  DISTINCT FIELD_1                  
     FROM    TABLE                  
     WHERE   FIELD_2 BETWEEN :MIN_DATE
                        AND '9999-12-31'      
           AND   FIELD_3 =  :VALUE 
     WITH UR                                  
     FOR FETCH ONLY                           
END-EXEC 

Both the cursors are pointing to same table. How can I combine the two cursors? Please let me know a way to combine the two tables.

4

1 回答 1

0

如果您只想组合两个游标的谓词,当然可以。合并WHERE从句:

EXEC SQL                                      
     DECLARE C1 CURSOR FOR               
     SELECT  DISTINCT FIELD_1                  
     FROM    TABLE                  
     WHERE   FIELD_2 BETWEEN :MIN_DATE
                        AND :MAX_DATE
           AND   FIELD_3 =  :VALUE 
     WITH UR                                  
     FOR FETCH ONLY                           
END-EXEC

您在问题中的示例的最小值和最大值都在一个范围内,9999-12-31这对我来说没有意义。

于 2017-08-02T10:04:02.230 回答