SnowConvert: Funktionsreferenzen – gemeinsam genutzt¶
INTERVAL_MULTIPLY_UDF (VARCHAR, VARCHAR, INTEGER)¶
Definition¶
Diese benutzerdefinierte Funktion (User-Defined Function, UDF) wird verwendet, um ein Zeitintervall mit dem Faktor N zu multiplizieren.
INTERVAL_MULTIPLY_UDF
(INPUT_PART VARCHAR(30), INPUT_VALUE VARCHAR(), INPUT_MULT INTEGER)
Parameter¶
INPUT_PART
VARCHAR
Das Format der Operation. Beispiel: DAY
, HOUR TO SECOND,
YEAR TO MONTH
INPUT_VALUE
VARCHAR
Das zu multiplizierende Zeitintervall.
INPUT_MULT
INTEGER
Die Zeit zum Multiplizieren des Zeitintervalls.
Rückgabewerte¶
Gibt ein varchar mit dem Ergebnis der Multiplikation zurück.
Verwendungsbeispiel¶
Eingabe:
SELECT INTERVAL_MULTIPLY_UDF('DAY', '2', 100);
Ausgabe:
200
TRUNC_UDF (TIMESTAMP_LTZ, VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) reproduziert die Teradata- und Oracle-Funktionalität TRUNC(Date), wenn der Formatparameter angegeben ist.
TRUNC_UDF(DATE_TO_TRUNC TIMESTAMP_LTZ, DATE_FMT VARCHAR(5))
Parameter¶
DATE_TO_TRUNC
TIMESTAMP_LTZ
Ein timestamp_ltz
-Wert, der abgeschnitten werden soll und ein Datum, ein Zeitstempel oder ein Zeitstempel mit Zeitzone sein muss.
DATE_FMT
VARCHAR
Ein varchar-Wert, der eines der Datumsformate aufweisen sollte, die von der Funktion trunc
unterstützt werden.
Rückgabewerte¶
Gibt ein Datum zurück, das in dem angegebenen Format abgeschnitten wurde.
Verwendungsbeispiel¶
Eingabe:
SELECT TRUNC_UDF(TIMESTAMP '2015-08-18 12:30:00', 'Q')
Ausgabe:
2015-07-01
INTERVAL_TO_SECONDS_UDF (VARCHAR, VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wird verwendet, um die Anzahl der Sekunden aus einem Intervall zu bestimmen, das auch mit dem verarbeiteten Zeittyp korreliert ist. Dies ist eine Hilfsfunktion.
INTERVAL_TO_SECONDS_UDF
(INPUT_PART VARCHAR(30), INPUT_VALUE VARCHAR())
Parameter¶
INPUT_PART
VARCHAR
Der zugehörige Typ des zweiten Parameters. Beispiel: DAY
, DAY TO HOUR
, HOUR
, MINUTE
INPUT_VALUE
VARCHAR
Der Wert, der in Sekunden umgerechnet werden soll.
Rückgabewerte¶
Gibt einen Dezimalwert mit der Anzahl der Sekunden zurück.
Verwendungsbeispiel¶
Eingabe:
SELECT INTERVAL_TO_SECONDS_UDF('DAY', '1');
Ausgabe:
86400.000000
DATEDIFF_UDF (DATE, STRING)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wird verwendet, um die Differenz zwischen einem Intervallwert und einem Datum zu generieren.
DATEDIFF_UDF(D DATE, INTERVAL_VALUE STRING)
Parameter¶
D
DATE
Das Datum, das für die Verarbeitung der Differenz zum Intervall verwendet wird.
INTERVAL_VALUE
STRING
Der Intervallwert, aus dem die Differenz gebildet werden soll.
Rückgabewerte¶
Gibt ein Datum mit dem Wert zurück, der sich aus der Subtraktion der Zeit ergibt.
Verwendungsbeispiel¶
Eingabe:
SELECT DATEDIFF_UDF('2024-01-30', 'INTERVAL ''2-1'' YEAR(2) TO MONTH');
Ausgabe:
2021-12-30
SECONDS_TO_INTERVAL_UDF (VARCHAR, NUMBER)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wird verwendet, um Sekunden in Intervalle zu transformieren. Dies ist eine Hilfsfunktion.
SECONDS_TO_INTERVAL_UDF
(INPUT_PART VARCHAR(30), INPUT_VALUE NUMBER)
Parameter¶
INPUT_PART
VARCHAR
Der zugehörige Typ des zweiten Parameters. Beispiel: DAY
, DAY TO HOUR
, HOUR
, MINUTE
, MINUTE TO SECOND
INPUT_VALUE
VARCHAR
Die Sekunden, die in Intervalle umgewandelt werden sollen.
Rückgabewerte¶
Rückgabewerte
Verwendungsbeispiel¶
Eingabe:
SELECT SECONDS_TO_INTERVAL_UDF('DAY TO SECOND', '86400');
Ausgabe:
1 000:000:000
DATEADD_UDF (STRING, DATE)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wird verwendet, um ein Datum mit einem Zeitintervall hinzuzufügen.
DATEADD_UDF(INTERVAL_VALUE STRING,D DATE)
Parameter¶
INTERVAL_VALUE
STRING
Das Zeitintervall, das hinzugefügt werden soll.
D
DATE
Das Datum, das mit dem Zeitintervall hinzugefügt werden soll.
Rückgabewerte¶
Gibt ein Datum mit dem hinzugefügten Zeitintervall und Datum zurück.
Verwendungsbeispiel¶
Eingabe:
SELECT DATEADD_UDF('INTERVAL ''2-1'' YEAR(2) TO MONTH', '2024-01-30');
Ausgabe:
2026-02-28
DATEDIFF_UDF (STRING, DATE)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wird verwendet, um die Differenz zwischen einem Intervallwert und einem Datum zu generieren.
DATEDIFF_UDF(INTERVAL_VALUE STRING,D DATE)
Parameter¶
INTERVAL_VALUE
STRING
Der Intervallwert, aus dem die Differenz gebildet werden soll.
D
DATE
Das Datum, das für die Verarbeitung der Differenz zum Intervall verwendet wird.
Rückgabewerte¶
Gibt ein Datum mit dem Wert zurück, der sich aus der Subtraktion der Zeit ergibt.
Verwendungsbeispiel¶
Eingabe:
SELECT DATEDIFF_UDF('INTERVAL ''2-1'' YEAR(2) TO MONTH', '2024-01-30');
Ausgabe:
2021-12-30
DATEADD_UDF (DATE, STRING)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wird verwendet, um ein Datum mit einem Zeitintervall hinzuzufügen.
DATEADD_UDF(D DATE, INTERVAL_VALUE STRING)
Parameter¶
D
DATE
Das Datum, das mit dem Zeitintervall hinzugefügt werden soll.
INTERVAL_VALUE
STRING
Das Zeitintervall, das hinzugefügt werden soll.
Rückgabewerte¶
Gibt ein Datum mit dem hinzugefügten Zeitintervall und Datum zurück.
Verwendungsbeispiel¶
Eingabe:
SELECT DATEADD_UDF('2024-01-30', 'INTERVAL ''1-1'' YEAR(2) TO MONTH');
Ausgabe:
2025-02-28
TO_INTERVAL_UDF (TIME)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wird verwendet, um ein separates Zeitintervall von der aktuellen Zeit zu generieren.
TO_INTERVAL_UDF(D2 TIME)
Parameter¶
D2
TIME
Die Eingabezeit, die in ein separates Intervall konvertiert werden soll.
Rückgabewerte¶
Gibt eine Zeichenfolge mit den Informationen der Eingabezeit getrennt zurück.
Verwendungsbeispiel¶
Eingabe:
SELECT TO_INTERVAL_UDF(CURRENT_TIME);
Ausgabe:
INTERVAL '4 HOURS,33 MINUTES,33 SECOND'
INTERVAL_TO_MONTHS_UDF (VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wird verwendet, um aus einem Intervall eine Ganzzahl mit der Anzahl eines Monats zu erzeugen. Dies ist eine Hilfsfunktion.
INTERVAL_TO_MONTHS_UDF
(INPUT_VALUE VARCHAR())
Parameter¶
INPUT_VALUE
VARCHAR
Der Intervallwert, der in Monate transformiert werden soll.
Rückgabewerte¶
Gibt eine Ganzzahl mit den verarbeiteten Informationen zu Monaten zurück.
Verwendungsbeispiel¶
Eingabe:
SELECT PUBLIC.INTERVAL_TO_MONTHS_UDF('1-6');
Ausgabe:
18
DATEDIFF_UDF (STRING, TIMESTAMP)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wird verwendet, um ein Zeitintervall mit einem Zeitstempel zu subtrahieren.
DATEADD_UDF(INTERVAL_VALUE STRING,D TIMESTAMP)
Parameter¶
INTERVAL_VALUE
STRING
Das Zeitintervall, das subtrahiert werden soll.
D
TIMESTAMP
Der Zeitstempel, der von dem Zeitintervall subtrahiert wird.
Rückgabewerte¶
Gibt ein Datum mit der Subtraktion des Zeitintervalls und des Datums zurück.
Verwendungsbeispiel¶
Eingabe:
SELECT PUBLIC.DATEDIFF_UDF('INTERVAL ''1-1'' YEAR(2) TO MONTH', TO_TIMESTAMP('2024-01-31 05:09:09.799 -0800'));
Ausgabe:
2022-12-31 05:09:09.799
MONTHS_TO_INTERVAL_UDF (VARCHAR, NUMBER)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wird verwendet, um Monatswerte in Intervalle umzuwandeln. Dies ist eine Hilfsfunktion.
MONTHS_TO_INTERVAL_UDF
(INPUT_PART VARCHAR(30), INPUT_VALUE NUMBER)
Parameter¶
INPUT_PART
VARCHAR
Der zugehörige Typ des zweiten Parameters. Beispiel: YEAR TO MONTH
, YEAR
, MONTH
INPUT_VALUE
VARCHAR
Der Monat, der in Intervalle umgerechnet werden soll.
Rückgabewerte¶
Gibt ein varchar mit dem in ein Intervall transformierten Eingabewert zurück.
Verwendungsbeispiel¶
Eingabe:
SELECT MONTHS_TO_INTERVAL_UDF('YEAR TO MONTH', 2);
Ausgabe:
2
DATEDIFF_UDF (TIMESTAMP, STRING)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wird verwendet, um einen Zeitstempel mit einem Zeitintervall zu subtrahieren.
DATEDIFF_UDF(D TIMESTAMP, INTERVAL_VALUE STRING)
Parameter¶
D
TIMESTAMP
Der Zeitstempel, der vom Zeitintervall subtrahiert wird.
INTERVAL_VALUE
STRING
Das Zeitintervall, das subtrahiert werden soll.
Rückgabewerte¶
Gibt ein Datum mit der Subtraktion des Zeitintervalls und des Datums zurück.
Verwendungsbeispiel¶
Eingabe:
SELECT PUBLIC.DATEDIFF_UDF(TO_TIMESTAMP('2024-01-31 05:09:09.799 -0800'), 'INTERVAL ''1-1'' YEAR(2) TO MONTH');
Ausgabe:
2022-12-31 05:09:09.799
TRUNC_UDF (NUMBER)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) reproduziert die Teradata- und Oracle-Funktionalität TRUNC(Numeric)
, wenn keine Anzahl von Dezimalstellen angegeben ist.
TRUNC_UDF(INPUT NUMBER)
Parameter¶
INPUT
NUMBER
Die Zahl, die abgeschnitten werden soll.
Rückgabewerte¶
Gibt eine Ganzzahl als Eingabe zurück, die auf null Dezimalstellen abgeschnitten ist.
Verwendungsbeispiel¶
Eingabe:
SELECT TRUNC_UDF(25122.3368)
Ausgabe:
25122
TRUNC_UDF (NUMBER, NUMBER)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) reproduziert die Teradata- und Oracle-Funktionalität TRUNC(Numeric)
, wenn eine Anzahl von Dezimalstellen angegeben wird.
TRUNC_UDF(INPUT NUMBER, SCALE NUMBER)
Parameter¶
INPUT
NUMBER
Die Zahl, die abgeschnitten werden soll.
SCALE
NUMBER
Die Anzahl der Stellen, die abgeschnitten werden sollen (zwischen -38 und 38).
Rückgabewerte¶
Gibt eine Ganzzahl als Eingabe zurück, die auf eine Anzahl von Dezimalstellen abgeschnitten ist.
Verwendungsbeispiel¶
Eingabe:
SELECT TRUNC_UDF(25122.3368, -2);
Ausgabe:
25100
INTERVAL_ADD_UDF (VARCHAR, VARCHAR, VARCHAR, VARCHAR, CHAR, VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wird verwendet, um Intervalle mit einem bestimmten Zeittyp zu addieren oder zu subtrahieren.
INTERVAL_ADD_UDF
(INPUT_VALUE1 VARCHAR(), INPUT_PART1 VARCHAR(30), INPUT_VALUE2 VARCHAR(), INPUT_PART2 VARCHAR(30), OP CHAR, OUTPUT_PART VARCHAR())
Parameter¶
INPUT_VALUE1
VARCHAR
Die Menge, die einen Zeittyp referenziert.
INPUT_PART1
VARCHAR
Der Zeittyp von _ INPUT_VALUE1
_. Beispiel: HOUR
.
INPUT_VALUE2
VARCHAR
Die zweite Menge referenziert einen Zeittyp.
INPUT_PART2
VARCHAR
Der Zeittyp von _ INPUT_VALUE2
_. Beispiel: HOUR
.
OP
CHAR
Die Operation. I kann „+“ oder „-“ lauten.
OUTPUT_PART
VARCHAR
Der Zeittyp der Ausgabeoperation.
Rückgabewerte¶
Gibt ein varchar mit dem Ergebnis der angegebenen Operation und den Werten zurück.
Verwendungsbeispiel¶
Eingabe:
SELECT INTERVAL_ADD_UDF('7', 'HOUR', '1', 'HOUR', '+', 'HOUR');
Ausgabe:
8
DATEADD_UDF (STRING, TIMESTAMP)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wird verwendet, um einen Zeitstempel mit einem Zeitintervall hinzuzufügen.
DATEADD_UDF(INTERVAL_VALUE STRING,D TIMESTAMP)
Parameter¶
INTERVAL_VALUE
STRING
Das Zeitintervall, das hinzugefügt werden soll.
D
TIMESTAMP
Der Zeitstempel, der zum Zeitintervall hinzugefügt wird.
Rückgabewerte¶
Gibt ein Datum mit dem hinzugefügten Zeitintervall und Datum zurück.
Verwendungsbeispiel¶
Eingabe:
SELECT PUBLIC.DATEADD_UDF('INTERVAL ''1-1'' YEAR(2) TO MONTH', TO_TIMESTAMP('2024-01-31 05:09:09.799 -0800'));
Ausgabe:
2025-02-28 05:09:09.799
TRUNC_UDF (TIMESTAMP_LTZ)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) reproduziert die Teradata- und Oracle-Funktionalität TRUNC(Date), wenn der Formatparameter nicht angegeben ist.
TRUNC_UDF(INPUT TIMESTAMP_LTZ)
Parameter¶
DATE_TO_TRUNC
TIMESTAMP_LTZ
Ein timestamp_ltz
-Wert, der abgeschnitten werden soll und ein Datum, ein Zeitstempel oder ein Zeitstempel mit Zeitzone sein muss.
Rückgabewerte¶
Gibt den Datumsteil von DATE_TO_TRUNC
zurück.
Verwendungsbeispiel¶
Eingabe:
SELECT TRUNC_UDF(TIMESTAMP '2015-08-18 12:30:00')
Ausgabe:
2015-08-18
DATEADD_UDF (TIMESTAMP, STRING)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wird verwendet, um einen Zeitstempel mit einem Zeitintervall hinzuzufügen.
DATEADD_UDF(D TIMESTAMP, INTERVAL_VALUE STRING)
Parameter¶
D
TIMESTAMP
Der Zeitstempel, der zum Zeitintervall hinzugefügt wird.
INTERVAL_VALUE
STRING
Das Zeitintervall, das hinzugefügt werden soll.
Rückgabewerte¶
Gibt ein Datum mit dem hinzugefügten Zeitintervall und Datum zurück.
Verwendungsbeispiel¶
Eingabe:
SELECT PUBLIC.DATEADD_UDF(TO_TIMESTAMP('2024-01-31 05:09:09.799 -0800'), 'INTERVAL ''1-1'' YEAR(2) TO MONTH');
Ausgabe:
2025-02-28 05:09:09.799