これは、 Informix がパラメーターを使用して INTERVAL を定義するのとほぼ同じ問題ですが、Teradata にあります。
間隔として使用される hh:mm:ss 形式の文字列を受け入れるマクロを作成しています。
マクロは、過去の hh:mm:ss のタイムスタンプで何かをしたいと考えています。
これが基本的なSQLです
CREATE MACRO TEST_MACRO (
HHMMSS CHAR(8)
)
AS
(
SELECT
CAST(CURRENT_TIME AS TIMESTAMP(0)),
CAST(CURRENT_TIME - INTERVAL :HHMMSS HOUR TO SECOND AS TIMESTAMP(0))
)
エラーが発生しますFailed 3707: Syntax error, expected something like a string or a Unicode character literal between the 'INTERVAL' keyword and ':'
。
これを回避する方法はありますか?