例: TOP n演算子の値をSQLプロシージャへの受け渡し - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 構文規則および例

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
Published
2021年1月
Language
日本語
Last Update
2021-03-30
dita:mapPath
ja-JP/ncd1596241368722.ditamap
dita:ditavalPath
ja-JP/ncd1596241368722.ditaval
dita:id
B035-1144
Product Category
Software
Teradata Vantage

次のプロシージャでは、nの値を、SELECTリクエストのTOP n演算子にINTEGERパラメータaとして渡しています。

     CREATE PROCEDURE fct (IN a INTEGER) 
         BEGIN 
             DECLARE hc1 INTEGER; 
             DECLARE hc2 INTEGER; 
             FOR 
                 RecordPointer AS c_sptable CURSOR FOR 
                 SELECT TOP :a x1 AS c_c1, y1 AS c_c2 
                 FROM t1 
                 DO 
                    SET hc1 = RecordPointer.c_c1; 
                    SET hc2 = RecordPointer.c_c2; 
                    INSERT INTO t2 VALUES (:hc1,:hc2); 
             END FOR ; 
         ROLLBACK; 
         END;