SnowConvert: 関数参照 - 共有

INTERVAL_MULTIPLY_UDF (VARCHAR, VARCHAR, INTEGER)

定義

このユーザー定義関数(UDF)は、時間間隔に「N」倍の値を乗算するために使用します。

INTERVAL_MULTIPLY_UDF
(INPUT_PART VARCHAR(30), INPUT_VALUE VARCHAR(), INPUT_MULT INTEGER)
Copy

パラメーター

INPUT_PART VARCHAR

操作の形式。例: DAYHOUR TO SECONDYEAR TO MONTH

INPUT_VALUE VARCHAR

乗算する時間の間隔。

INPUT_MULT INTEGER

時間の間隔を乗算する時間。

戻り値

乗算結果をvarcharで返します。

使用例

入力:

SELECT INTERVAL_MULTIPLY_UDF('DAY', '2', 100);
Copy

出力:

200
Copy

TRUNC_UDF (TIMESTAMP_LTZ, VARCHAR)

定義

このユーザー定義関数(UDF)は、形式パラメーターが指定された場合に、TeradataおよびOracleの TRUNC(Date) 関数を再現します。

TRUNC_UDF(DATE_TO_TRUNC TIMESTAMP_LTZ, DATE_FMT VARCHAR(5))
Copy

パラメーター

DATE_TO_TRUNC TIMESTAMP_LTZ

切り捨てる timestamp_ltz 値。日付、タイムスタンプ、タイムゾーン付きタイムスタンプにする必要があります。

DATE_FMT VARCHAR

trunc 関数でサポートされている日付形式のいずれかであるvarchar値。

戻り値

指定した形式で切り捨てられた日付を返します。

使用例

入力:

SELECT TRUNC_UDF(TIMESTAMP '2015-08-18 12:30:00', 'Q')
Copy

出力:

2015-07-01
Copy

INTERVAL_TO_SECONDS_UDF (VARCHAR, VARCHAR)

定義

このユーザー定義関数(UDF)は、処理された時間タイプに関連する間隔から秒数を決定するために使用されます。これは補助関数です。

INTERVAL_TO_SECONDS_UDF
(INPUT_PART VARCHAR(30), INPUT_VALUE VARCHAR())
Copy

パラメーター

INPUT_PART VARCHAR

第2パラメーターの関連タイプ。例: DAYDAY TO HOURHOURMINUTE

INPUT_VALUE VARCHAR

秒に変換する値。

戻り値

秒数を10進数値タイプで返します。

使用例

入力:

SELECT INTERVAL_TO_SECONDS_UDF('DAY', '1');
Copy

出力:

86400.000000
Copy

DATEDIFF_UDF (DATE, STRING)

定義

このユーザー定義関数(UDF)は、間隔値と日付の差を生成するために使用されます。

DATEDIFF_UDF(D DATE, INTERVAL_VALUE STRING)
Copy

パラメーター

D DATE

間隔との差分処理に使用する日付。

INTERVAL_VALUE STRING

差分を作成するために使用される間隔値。

戻り値

時刻を減算した結果の値を日付として返します。

使用例

入力:

SELECT DATEDIFF_UDF('2024-01-30', 'INTERVAL ''2-1'' YEAR(2) TO MONTH');
Copy

出力:

2021-12-30
Copy

SECONDS_TO_INTERVAL_UDF (VARCHAR, NUMBER)

定義

このユーザー定義関数(UDF)は、秒を間隔に変換するために使用されます。これは補助関数です。

SECONDS_TO_INTERVAL_UDF
(INPUT_PART VARCHAR(30), INPUT_VALUE NUMBER)
Copy

パラメーター

INPUT_PART VARCHAR

第2パラメーターの関連タイプ。例: DAYDAY TO HOURHOURMINUTEMINUTE TO SECOND

INPUT_VALUE VARCHAR

間隔に変換する秒数。

戻り値

戻り値

使用例

入力:

SELECT SECONDS_TO_INTERVAL_UDF('DAY TO SECOND', '86400');
Copy

出力:

1 000:000:000
Copy

DATEADD_UDF (STRING, DATE)

定義

このユーザー定義関数(UDF)は、日付に時間間隔を追加するために使用します。

DATEADD_UDF(INTERVAL_VALUE STRING,D DATE)
Copy

パラメーター

INTERVAL_VALUE STRING

追加する時間間隔。

D DATE

時間間隔とともに追加される日付。

戻り値

時間間隔と日付を加算した日付を返します。

使用例

入力:

SELECT DATEADD_UDF('INTERVAL ''2-1'' YEAR(2) TO MONTH', '2024-01-30');
Copy

出力:

2026-02-28
Copy

DATEDIFF_UDF (STRING, DATE)

定義

このユーザー定義関数(UDF)は、間隔値と日付の差を生成するために使用されます。

DATEDIFF_UDF(INTERVAL_VALUE STRING,D DATE)
Copy

パラメーター

INTERVAL_VALUE STRING

差分を作成するために使用される間隔値。

D DATE

間隔との差分処理に使用する日付。

戻り値

時刻を減算した結果の値を日付として返します。

使用例

入力:

SELECT DATEDIFF_UDF('INTERVAL ''2-1'' YEAR(2) TO MONTH', '2024-01-30');
Copy

出力:

2021-12-30
Copy

DATEADD_UDF (DATE, STRING)

定義

このユーザー定義関数(UDF)は、日付に時間間隔を追加するために使用します。

DATEADD_UDF(D DATE, INTERVAL_VALUE STRING)
Copy

パラメーター

D DATE

時間間隔とともに追加される日付。

INTERVAL_VALUE STRING

追加する時間間隔。

戻り値

時間間隔と日付を加算した日付を返します。

使用例

入力:

SELECT DATEADD_UDF('2024-01-30', 'INTERVAL ''1-1'' YEAR(2) TO MONTH');
Copy

出力:

2025-02-28
Copy

TO_INTERVAL_UDF (TIME)

定義

このユーザー定義関数(UDF)は、現在時刻とは別の時間間隔を生成するために使用します。

TO_INTERVAL_UDF(D2 TIME)
Copy

パラメーター

D2 TIME

入力時間を別の間隔に変換します。

戻り値

入力時間の情報を分割した文字列を返します。

使用例

入力:

SELECT TO_INTERVAL_UDF(CURRENT_TIME);
Copy

出力:

INTERVAL '4 HOURS,33 MINUTES,33 SECOND'
Copy

INTERVAL_TO_MONTHS_UDF (VARCHAR)

定義

このユーザー定義関数(UDF)は、ある間隔から月単位の整数を生成するために使用します。これは補助関数です。

INTERVAL_TO_MONTHS_UDF
(INPUT_VALUE VARCHAR())
Copy

パラメーター

INPUT_VALUE VARCHAR

月単位に変換される間隔値。

戻り値

処理した月の情報を整数で返します。

使用例

入力:

SELECT PUBLIC.INTERVAL_TO_MONTHS_UDF('1-6');
Copy

出力:

18
Copy

DATEDIFF_UDF (STRING, TIMESTAMP)

定義

このユーザー定義関数(UDF)は、タイムスタンプから時間間隔を減算するために使用されます。

DATEADD_UDF(INTERVAL_VALUE STRING,D TIMESTAMP)
Copy

パラメーター

INTERVAL_VALUE STRING

減算する時間間隔。

D TIMESTAMP

時間間隔で減算されるタイムスタンプ。

戻り値

時間間隔と日付を減算して日付を返します。

使用例

入力:

SELECT PUBLIC.DATEDIFF_UDF('INTERVAL ''1-1'' YEAR(2) TO MONTH', TO_TIMESTAMP('2024-01-31 05:09:09.799 -0800'));
Copy

出力:

2022-12-31 05:09:09.799
Copy

MONTHS_TO_INTERVAL_UDF (VARCHAR, NUMBER)

定義

このユーザー定義関数(UDF)は、月の値を間隔に変換するために使用されます。これは補助関数です。

MONTHS_TO_INTERVAL_UDF
(INPUT_PART VARCHAR(30), INPUT_VALUE NUMBER)
Copy

パラメーター

INPUT_PART VARCHAR

第2パラメーターの関連タイプ。例: YEAR TO MONTHYEARMONTH

INPUT_VALUE VARCHAR

間隔に変換する月。

戻り値

入力値を間隔に変換したvarcharを返します。

使用例

入力:

SELECT MONTHS_TO_INTERVAL_UDF('YEAR TO MONTH', 2);
Copy

出力:

2
Copy

DATEDIFF_UDF (TIMESTAMP, STRING)

定義

このユーザー定義関数(UDF)は、タイムスタンプを時間間隔で減算するために使用されます。

DATEDIFF_UDF(D TIMESTAMP, INTERVAL_VALUE STRING)
Copy

パラメーター

D TIMESTAMP

時間間隔で減算されるタイムスタンプ。

INTERVAL_VALUE STRING

減算する時間間隔。

戻り値

時間間隔と日付を減算して日付を返します。

使用例

入力:

SELECT PUBLIC.DATEDIFF_UDF(TO_TIMESTAMP('2024-01-31 05:09:09.799 -0800'), 'INTERVAL ''1-1'' YEAR(2) TO MONTH');
Copy

出力:

2022-12-31 05:09:09.799
Copy

TRUNC_UDF (NUMBER)

定義

このユーザー定義関数(UDF)は、スケールが指定されて いない 場合に、TeradataおよびOracleの TRUNC(Numeric) 関数を再現します。

TRUNC_UDF(INPUT NUMBER)
Copy

パラメーター

INPUT NUMBER

切り捨てる数。

戻り値

小数点以下を切り捨ててintを入力として返します。

使用例

入力:

SELECT TRUNC_UDF(25122.3368)
Copy

出力:

25122
Copy

TRUNC_UDF (NUMBER, NUMBER)

定義

このユーザー定義関数(UDF)は、スケールが指定されている場合に、TeradataおよびOracleの TRUNC(Numeric) 関数を再現します。

TRUNC_UDF(INPUT NUMBER, SCALE NUMBER)
Copy

パラメーター

INPUT NUMBER

切り捨てる数。

SCALE NUMBER

切り捨てる桁数(-38から38の間)。

戻り値

スケールに合わせて切り捨てたintを入力として返します。

使用例

入力:

SELECT TRUNC_UDF(25122.3368, -2);
Copy

出力:

25100
Copy

INTERVAL_ADD_UDF (VARCHAR, VARCHAR, VARCHAR, VARCHAR, CHAR, VARCHAR)

定義

このユーザー定義関数(UDF)は、特定の時間タイプの間隔を加算または減算するために使用されます。

INTERVAL_ADD_UDF
(INPUT_VALUE1 VARCHAR(), INPUT_PART1 VARCHAR(30), INPUT_VALUE2 VARCHAR(), INPUT_PART2 VARCHAR(30), OP CHAR, OUTPUT_PART VARCHAR())
Copy

パラメーター

INPUT_VALUE1 VARCHAR

時間タイプに参照される量。

INPUT_PART1 VARCHAR

_ INPUT_VALUE1_ の時間タイプ。例: HOUR

INPUT_VALUE2 VARCHAR

時間タイプに参照される2番目の量。

INPUT_PART2 VARCHAR

_ INPUT_VALUE2_ の時間タイプ。例: HOUR

OP CHAR

操作。「+」または「-」です。

OUTPUT_PART VARCHAR

出力操作の時間タイプ。

戻り値

表示された操作の結果と値をvarcharで返します。

使用例

入力:

SELECT INTERVAL_ADD_UDF('7', 'HOUR', '1', 'HOUR', '+', 'HOUR');
Copy

出力:

8
Copy

DATEADD_UDF (STRING, TIMESTAMP)

定義

このユーザー定義関数(UDF)は、タイムスタンプを時間間隔で追加するために使用されます。

DATEADD_UDF(INTERVAL_VALUE STRING,D TIMESTAMP)
Copy

パラメーター

INTERVAL_VALUE STRING

追加する時間間隔。

D TIMESTAMP

時間間隔で追加されるタイムスタンプ。

戻り値

時間間隔と日付を加算した日付を返します。

使用例

入力:

SELECT PUBLIC.DATEADD_UDF('INTERVAL ''1-1'' YEAR(2) TO MONTH', TO_TIMESTAMP('2024-01-31 05:09:09.799 -0800'));
Copy

出力:

2025-02-28 05:09:09.799
Copy

TRUNC_UDF (TIMESTAMP_LTZ)

定義

このユーザー定義関数(UDF)は、形式パラメーターが指定されて いない 場合に、TeradataおよびOracleの TRUNC(Date)関数を再現します。

TRUNC_UDF(INPUT TIMESTAMP_LTZ)
Copy

パラメーター

DATE_TO_TRUNC TIMESTAMP_LTZ

切り捨てる timestamp_ltz 値。日付、タイムスタンプ、タイムゾーン付きタイムスタンプにする必要があります。

戻り値

DATE_TO_TRUNC の日付部分を返します。

使用例

入力:

SELECT TRUNC_UDF(TIMESTAMP '2015-08-18 12:30:00')
Copy

出力:

2015-08-18
Copy

DATEADD_UDF (TIMESTAMP, STRING)

定義

このユーザー定義関数(UDF)は、タイムスタンプを時間間隔で追加するために使用されます。

DATEADD_UDF(D TIMESTAMP, INTERVAL_VALUE STRING)
Copy

パラメーター

D TIMESTAMP

時間間隔で追加されるタイムスタンプ。

INTERVAL_VALUE STRING

追加する時間間隔。

戻り値

時間間隔と日付を加算した日付を返します。

使用例

入力:

SELECT PUBLIC.DATEADD_UDF(TO_TIMESTAMP('2024-01-31 05:09:09.799 -0800'), 'INTERVAL ''1-1'' YEAR(2) TO MONTH');
Copy

出力:

2025-02-28 05:09:09.799
Copy