如何执行作为值存储在数据库中的SQL语句?

时间:2019-02-01 14:08:41

标签: sql netezza aginity

我的Netezza DWH中存储了一些SQL语句。我想从一个新查询中运行其中一些(或至少一个)。

我已经使用Declare等工具进行了很多尝试,但似乎无法在Netezza上正常工作。

这是已存储的查询:

SELECT 
    "CUST-NO (CUNO)" AS KEY_REFERENCE, 
    'TESTDB' AS REQ_NBR, 
    CASE 
       WHEN TRIM("VAT-ID (VATID)") = '' 
          THEN 'InValid' 
          ELSE 'Valid' 
    END AS VALIDATION
FROM
    PE_NL."Customer Name and Address Physical File (CIPNAME0)"
WHERE 
    "COUNTRY (CCNTRY)" = 'NL'

这是检索查询的方法:

SELECT QUERY_STR 
FROM MDM.DQM_REFERENCE_TESTDB 
WHERE SOURCE_SYSTEM = 'LOTUSN'

我想创建一个查询,查询第一个查询并执行它。我在此网站上(针对Netezza)找不到类似的问题。希望有人能帮助我。谢谢。

1 个答案:

答案 0 :(得分:0)

您必须创建一个存储过程。在其中,可以使用一组新的语句。在这种情况下,“立即执行”可能会做的伎俩。在此处https://www.ibm.com/support/knowledgecenter/en/SSULQD_7.2.1/com.ibm.nz.sproc.doc/c_sproc_executing_dynamic_queries.html

了解更多