1. 程式人生 > >把SQL的執行結果賦值給變數,然後將其作為while的條件,迴圈執行SQL

把SQL的執行結果賦值給變數,然後將其作為while的條件,迴圈執行SQL

主要的SQL指令碼如下:

BEGIN
	DECLARE
		V INT DEFAULT 1;

DECLARE
	ARGS INT DEFAULT 0; #宣告變數

SELECT
	COUNT(*) INTO ARGS  #給變數賦值
FROM
	(
		SELECT
			A.INVE_AMOUNT AS FIRST_INVEST_MONEY
		FROM
			(
				SELECT
					MIN(INVESTTIME) AS MIN_INVE,
					INVESTAMOUNT AS INVE_AMOUNT,
					INVESTOR AS INVESTOR
				FROM
					DW_ODS.ODS_HZCF_T_INVEST
				WHERE
					FLAG = '30007001002' -- AND INVESTOR = '0558dad47fe24be09bd4880a77b1f8b3' 
				GROUP BY
					INVESTOR
			) AS A
	) AS B;


WHILE V < ARGS 
DO
	#滿足條件,執行SQL
	INSERT INTO DW_BDS.TEST
VALUES
	(V, '11');

SET V = V + 1;


END
WHILE;


END