DB2 Temp Table 未返回结果

DB2 Temp Table not returning Results

我正在编写一个程序,用于向证书将在未来 3 个月内到期的员工发送电子邮件。由于一些员工已经更新了他们的认证,我正在创建 "Good Ids" 的临时 table,拥有至少三个月不会过期的认证的员工。

为此,我正在使用:

CREATE GLOBAL TEMPORARY TABLE GOOD_IDS(
    INTERNAL_EMPL_ID  VARCHAR(10)
    ) ON COMMIT PRESERVE ROWS;

INSERT INTO GOOD_IDS (
SELECT DISTINCT (INTERNAL_EMPL_ID) 
    FROM LICENSE 
    WHERE LICENSE_TYP_CD IN ('STD') AND EXPIRATION_DT >= CURRENT DATE + 3 months);

SELECT * FROM GOOD_IDS

我自己 运行 第二个 select 并且可以确认它 returns ~3000 行。但是,当我 运行 所有三个时,我得到零行。我错过了什么?

好的。我重写了 SQL 以使用 WITH 语句。

所以现在看起来像这样

WITH 

GOOD_ID_LIST AS (SELECT DISTINCT (INTERNAL_EMPL_ID) FROM LICENSE WHERE LICENSE_TYP_CD IN ('STD') AND EXPIRATION_DT >= CURRENT DATE + 3 months)

SELECT ...