0
Teradata에서 내 매크로 SQL 내에서 변수를 사용하고 싶습니다.Teradata SQL 매크로에서 변수를 사용하는 방법
나는 나는 다음과 같은 것을 할 수 있다고 생각 : 작동하지 않았다 그러나
REPLACE MACRO DbName.MyMacro
(
MacroNm VARCHAR(50)
)
AS
(
/* Variable to store last time the macro was run */
DECLARE V_LAST_RUN_DATE TIMESTAMP;
/* Get last run date and store in V_LAST_RUN_DATE */
SELECT LastDate
INTO V_LAST_RUN_DATE
FROM DbName.RunLog
WHERE MacroNm = :MacroNm;
/* Update the last run date to now and save the old date in history */
EXECUTE MACRO DbName.RunLogUpdater(
:MacroNm
,V_LAST_RUN_DATE
,CURRENT_TIMESTAMP
);
);
를, 그래서 내가 대신 생각 :
이REPLACE MACRO DbName.MyMacro
(
MacroNm VARCHAR(50)
)
AS
(
/* Variable to store last time the macro was run */
CREATE VOLATILE TABLE MacroVars AS
(
SELECT LastDate AS V_LAST_RUN_DATE
FROM DbName.RunLog
WHERE MacroNm = :MacroNm;
)
WITH DATA ON COMMIT PRESERVE ROWS;
/* Update the last run date to now and save the old date in history */
EXECUTE MACRO DbName.RunLogUpdater(
:MacroNm
,SELECT V_LAST_RUN_DATE FROM MacroVars
,CURRENT_TIMESTAMP
);
);
내가 난 무엇을 할 수 저장 프로 시저를 찾고 있지만 성능을 피하고 싶습니다.
의견이 있으십니까?
내가 시도 할 수 있는게 뭔가 있습니까?
건배
팀
호기심에서 벗어난 상태에서 저장된 proc은 어떤 성능 문제를 일으 킵니까? – lins314159