SnowConvert AI – Funktionsreferenzen für Teradata¶
QUARTERNUMBER_OF_YEAR_UDF¶
Definition¶
UDF (benutzerdefinierte Funktion), die das Quartal eines bestimmten Datums entsprechend dem ISO-Kalenderjahr berechnet, ähnlich wie die Funktion QUARTERNUMBER_OF_YEAR_UDF(date, ‚ISO‘) von Teradata
Parameter¶
INPUT TimeSTAMP_TZ
Die Methode zum Extrahieren des Quartals
Rückgabewerte¶
Eine Ganzzahl (1–4), die angibt, in welches Quartal des Jahres das Datum fällt.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
DAYNUMBER_OF_YEAR_UDF¶
Definition¶
Gibt den Tag innerhalb des Jahres für einen bestimmten Zeitstempel zurück. Die Angabe des Tages reicht von 1 bis 365 (oder 366 in Schaltjahren). Diese Funktion verhält sich genauso wie DAYNUMBER_OF_YEAR(DATE, ‚ISO‘).
Parameter¶
INPUT TIMESTAMP_TZ
Zum Ermitteln des Tages im Jahr anhand eines Datums.
Rückgabewerte¶
Eine ganze Zahl von 1 bis 371
Beispiel¶
Eingabe:
Ausgabe:
SUBSTR_UDF (STRING, FLOAT)¶
Warnung
Diese benutzerdefinierte Funktion (UDF) akzeptiert zwei Parameter (überladene Funktion).
Definition¶
Ruft einen Teil des Textes aus einer angegebenen Zeichenfolge ab, indem eine Startposition und eine Länge angegeben werden
Parameter¶
BASE_EXPRESSION ist ein Zeichenfolgenparameter, der den Basisausdruck für die Operation definiert.
Der Quelltext, aus dem Sie einen Teil extrahieren möchten
START_POSITION: Eine Gleitkommazahl, die die Startposition in der Eingabezeichenfolge angibt
Die Position, an der Sie mit der Extraktion der Zeichen aus der Zeichenfolge beginnen möchten
Rückgabewerte¶
Die Teilzeichenfolge, die enthalten sein muss
Migrationsbeispiel¶
Eingabe:
Ausgabe:
CHKNUM_UDF¶
Definition¶
Überprüft, ob eine Zeichenfolge einen gültigen numerischen Wert enthält
Parameter¶
NUM: Eine Zeichenfolge, die eine Zahl darstellt
Die Textzeichenfolge, die überprüft werden muss
Rückgabewerte¶
Gibt 1 zurück, wenn der Eingabeparameter ein gültiger numerischer Wert ist. Wenn die Eingabe keine gültige Zahl ist (z. B. Text oder Sonderzeichen), wird 0 zurückgegeben.
Beispiel¶
Ausgabe:
TD_YEAR_END_UDF¶
Definition¶
UDF (benutzerdefinierte Funktion), die die Funktion TD_YEAR_END(DATE) oder TD_YEAR_END(DATE, ‚COMPATIBLE‘) von Teradata repliziert, die den letzten Tag des Jahres für ein bestimmtes Datum zurückgibt.
Parameter¶
INPUT DATE
Ermittelt den letzten Tag des aktuellen Jahres
Rückgabewerte¶
Der letzte Tag im Dezember (31. Dezember)
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
PERIOD_OVERLAPS_UDF¶
Definition¶
Eine benutzerdefinierte Funktion (UDF), die die Funktionalität von OVERLAPS OPERATOR implementiert. Diese Funktion vergleicht zwei oder mehr Zeiträume und stellt fest, ob sie sich zeitlich überschneiden.
Parameter¶
PERIODS ist ein Array, das Zeiträume enthält.
Alle Zeitraumausdrücke, die verglichen werden sollen
Rückgabewerte¶
TRUE, wenn alle Zeiträume in der Menge mindestens einen Punkt gemeinsam haben (Überschneidung), ansonsten FALSE
Migrationsbeispiel¶
Ausgabe:
WEEK_NUMBER_OF_QUARTER_COMPATIBLE_UDF¶
Definition¶
Berechnet, in welche Wochennummer innerhalb des aktuellen Quartals ein bestimmtes Datum fällt
Parameter¶
INPUT TIMESTAMP_TZ
Das Datum, anhand dessen berechnet wird, in welche Woche des Quartals es fällt
Rückgabewerte¶
Eine Ganzzahl, die angibt, in welche Woche des Quartals das Datum fällt (1-13)
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
ROMAN_NUMERALS_MONTH_UDF¶
Definition¶
Konvertiert ein Datum in den entsprechenden Monat in römischen Ziffern
Parameter¶
INPUT TIMESTAMP_TZ
Das Eingabedatum, aus dem der Monat extrahiert werden soll
Rückgabewerte¶
Ein varchar, das den Monat aus einem bestimmten Datum extrahiert
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
TD_YEAR_BEGIN_UDF¶
Definition¶
Eine benutzerdefinierte Funktion (UDF), die das Verhalten von TD_YEAR_BEGIN oder TD_YEAR_BEGIN(DATE, ‚COMPATIBLE‘) imitiert, indem sie den ersten Tag des Jahres für ein bestimmtes Datum zurückgibt
Parameter¶
INPUT DATE
Ermittelt den ersten Tag des aktuellen Jahres
Rückgabewerte¶
Der erste Tag im Januar
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
FULL_MONTH_NAME_UDF¶
Definition¶
Gibt den vollständigen Namen eines Monats in der von Ihnen gewählten Formatierung zurück: alle Großbuchstaben, alle Kleinbuchstaben oder nur der erste Buchstabe in Großbuchstaben
Parameter¶
INPUT TIMESTAMP_TZ
Das Datumsformat sollte den Monatsnamen anzeigen.
RESULTCASE VARCHAR
Das Format, in dem das Ergebnis angezeigt werden soll. Gültige Optionen sind „uppercase“, „lowercase“ und „firstOnly“.
Rückgabewerte¶
Gibt ein varchar zurück, das den vollständigen Namen eines Monats enthält
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
TO_BYTES_HEX_UDF¶
Definition¶
Konvertiert eine Dezimalzahl (Basis 10) in ihre hexadezimale Darstellung (Basis 16)
Parameter¶
INPUT ist ein Gleitkommazahlparameter.
Die Zahl, die in das Hexadezimalformat konvertiert wird
Rückgabewerte¶
Eine Zeichenfolge, die den Hexadezimalwert darstellt
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
PERIOD_INTERSECT_UDF¶
Definition¶
Eine benutzerdefinierte Funktion (UDF), die den P_INTERSECT-Operator repliziert. Diese Funktion vergleicht zwei oder mehr Zeiträume und stellt fest, wo sie sich überschneiden und gibt das gemeinsame Zeitintervall zwischen ihnen zurück.
Weitere Einzelheiten zur Quellfunktion finden Sie in der Dokumentation.
Parameter¶
PERIODS ist ein Array, das Zeiträume enthält.
Alle Zeitraumausdrücke, die verglichen werden müssen
Rückgabewerte¶
Der Abschnitt, in dem sich zwei Zeiträume überschneiden oder gemeinsame Daten haben.
Migrationsbeispiel¶
Eingabe:
Ausgabe:
INTERVAL_TO_SECONDS_UDF¶
Definition¶
Konvertiert ein Zeitintervall in Sekunden.
Parameter¶
INPUT_PART ist eine Variable vom Typ VARCHAR, die Eingabedaten speichert.
Die Zeitdauer, die in Sekunden umgerechnet wird.
INPUT_VALUE VARCHAR: Der Eingabeparameter, der Textdaten akzeptiert
Der Zeitintervalltyp für die Konvertierung. Beispiele sind „DAY“, „DAY TO HOUR“ und andere gültige Intervalltypen.
Rückgabewerte¶
Eine Dezimalzahl, die das Zeitintervall in Sekunden angibt
TIMESTAMP_ADD_UDF¶
Definition¶
Kombiniert zwei Zeitstempel zu einem einzigen Wert
Parameter¶
FIRST_DATE ist ein Zeitstempelfeld, das sowohl Datums- als auch Zeitinformationen enthält, mit Unterstützung für Zeitzonen (TIMESTAMP_LTZ).
Das Anfangsdatum, an dem dies hinzugefügt wurde
SECOND_DATE ist eine Zeitstempelspalte, die Zeitzoneninformationen enthält (TIMESTAMP_LTZ) (Zeitstempel mit lokaler Zeitzone).
Das Datum, an dem das Element zum zweiten Mal hinzugefügt wurde
Rückgabewerte¶
Ein Zeitstempel, der durch die Kombination der eingegebenen Datumsparameter erzeugt wird
INTERVAL_MULTIPLY_UDF¶
Definition¶
Eine benutzerdefinierte Funktion (UDF), die Multiplikationsoperationen mit Zeitintervallen durchführt
Parameter¶
INPUT_PART ist eine Variable vom Typ VARCHAR, die Eingabedaten speichert.
Der für die Multiplikation verwendete Wert, angegeben als „YEAR TO MONTH“
INPUT_VALUE VARCHAR
Das Intervall, mit dem multipliziert werden soll
INPUT_MULT ist ein Ganzzahlparameter, der als Multiplikator für Eingabewerte dient.
Die Zahl, die in der Multiplikationsoperation verwendet wird
Rückgabewerte¶
Die Ausgabe wird durch Multiplikation eines Zeitintervalls mit einem numerischen Wert berechnet.
Migrationsbeispiel¶
Eingabe:
Ausgabe:
TD_DAY_OF_WEEK_UDF¶
Definition¶
Benutzerdefinierte Funktion (UDF), die die Funktionalität von TD_DAY_OF_WEEK von Teradata repliziert. Einzelheiten über die ursprüngliche Teradata-Funktion finden Sie hier.
Parameter¶
INPUT TIMESTAMP_TZ
Datum, aus dem der Wochentag ermittelt werden soll
Rückgabewerte¶
Eine Ganzzahl von 1 bis 7, die den Wochentag angibt, wobei:
1 = Sonntag
2 = Montag
3 = Dienstag
4 = Mittwoch
5 = Donnerstag
6 = Freitag
7 = Samstag
Migrationsbeispiel¶
Eingabe:
Ausgabe:
ISO_YEAR_PART_UDF¶
Definition¶
Berechnet das ISO-Kalenderjahr ab einem bestimmten Datum. Das Ergebnis kann gekürzt werden, indem Sie die Anzahl der zu behaltenden Stellen angeben.
Parameter¶
INPUT TIMESTAMP_TZ
Das Datum, aus dem das ISO-Jahr zu extrahieren ist
DIGITS: Eine ganze Zahl, die die maximale Anzahl der anzuzeigenden Ziffern angibt
Die Anzahl der gewünschten Dezimalstellen in der Ausgabe
Rückgabewerte¶
Gibt eine Zeichenfolge (varchar) zurück, die das ISO-Jahr eines bestimmten Datums darstellt
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
DIFF_TIME_PERIOD_UDF¶
Definition¶
Berechnet das Zeitintervall zwischen zwei Daten auf der Grundlage des angegebenen Parameters für die Zeiteinheit
Parameter¶
TIME ist ein Datentyp, der zum Speichern von Zeitwerten in Stunden, Minuten, Sekunden und Sekundenbruchteilen verwendet wird. Der Wert wird als Textzeichenfolge gespeichert.
Der Zeitstempel, der als Ankerpunkt verwendet werden soll
PERIOD ist ein Textfeld (VARCHAR), das einen Zeitraum darstellt.
Die für die Erweiterung verwendete Zeitraumspalte
Rückgabewerte¶
Ein numerischer Wert, der das Zeitintervall zwischen zwei Daten angibt
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
WEEK_NUMBER_OF_QUARTER_ISO_UDF¶
Definition¶
Berechnet, in welche Wochennummer ein Datum innerhalb seines Quartals fällt, unter Verwendung der ISO-Kalenderstandards Diese Funktion verhält sich identisch mit der Teradata-Funktion WEEKNUMBER_OF_QUARTER(DATE, 'ISO').
Parameter¶
INPUT TIMESTAMP_TZ
Das Datum, anhand dessen berechnet wird, in welche Woche des Quartals es fällt
Rückgabewerte¶
Eine Ganzzahl, die angibt, welche Woche des Quartals (1–13) dies darstellt.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
NVP_UDF¶
Definition¶
Führt die gleiche Funktion aus wie die Teradata-FunktionNVP
Parameter¶
INSTRING VARCHAR
Name-Wert-Paare sind Datenelemente, die aus einem Namen und dem dazugehörigen Wert bestehen.
NAME_TO_SEARCH vom Typ VARCHAR
Der Namensparameter, der für die Suche innerhalb der Name-Wert-Paar-Funktion (NVP) verwendet wird
NAME_DELIMITERS VARCHAR
Das Zeichen, das verwendet wird, um Namen von ihren entsprechenden Werten zu trennen
VALUE_DELIMITERS VARCHAR
Das Zeichen, das verwendet wird, um einen Namen mit seinem entsprechenden Wert zu verbinden
OCCURRENCE steht für eine Gleitkommazahl, die angibt, wie oft etwas vorkommt.
Die Anzahl der übereinstimmenden Muster, nach denen gesucht werden soll
Rückgabewerte¶
Eine Textzeichenfolge (VARCHAR), die die gleichen Daten enthält wie die Eingabezeichenfolge
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
MONTH_SHORT_UDF¶
Definition¶
Gibt den abgekürzten Namen eines Monats (drei Buchstaben) in Großbuchstaben, Kleinbuchstaben oder in Großbuchstaben Ihrer Wahl zurück: Beispiel: „Jan“, „jan“ oder „JAN“.
Parameter¶
INPUT TIMESTAMP_TZ
Das Datum in einem Format, in dem der abgekürzte Monatsname angezeigt wird
RESULTCASE VARCHAR
Das zu verwendende Großbuchstaben-/Kleinbuchstaben-Format. Gültige Optionen sind:
‚uppercase‘: Konvertiert Text in Großbuchstaben
‚lowercase‘: Konvertiert Text in Kleinbuchstaben
‚firstOnly‘: Schreibt nur den ersten Buchstaben groß
Rückgabewerte¶
Ein varchar mit dem abgekürzten Namen eines Monats (z. B. „Jan“, „Feb“ etc.).
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
DATE_TO_INT_UDF¶
Definition¶
UDF (benutzerdefinierte Funktion), die einen Datumswert in seine numerische Darstellung konvertiert, ähnlich wie die Teradata-Funktion DATE-TO-NUMERIC
Parameter¶
DATE_TO_CONVERT steht für einen Datumswert, der umgewandelt werden muss
Konvertiert den Datumswert in ein Ganzzahlformat
Rückgabewerte¶
Gibt einen Datumswert im numerischen Format zurück
Beispiel¶
Eingabe:
Ausgabe:
PERIOD_UDF¶
Definition¶
Eine benutzerdefinierte Funktion (UDF), die den P_INTERSECT-Operator repliziert. Diese Funktion vergleicht zwei oder mehr Zeiträume und stellt fest, wo sie sich überschneiden und gibt das gemeinsame Zeitintervall zwischen ihnen zurück.
Erzeugt eine Zeichenfolgendarstellung der Start- und Endwerte eines Zeitraums (TIMESTAMP stellt einen Datentyp dar, der sowohl Datums- als auch Uhrzeitinformationen speichert. TIME oder DATE ist ein Datentyp, der zum Speichern von Kalenderdaten (Jahr, Monat und Tag) ohne Uhrzeitinformationen verwendet wird.) Diese Funktion emuliert die Periodenwert-Konstruktorfunktion von Teradata. Die Ausgabezeichenfolge folgt dem Standardformat von Snowflake für PERIOD-Werte. Um die Genauigkeit der Ausgabe anzupassen, können Sie entweder:
Den Sitzungsparameter
timestamp_output_formatändernDie Drei-Parameter-Version dieser UDF verwenden
Weitere Einzelheiten über die Quellfunktion finden Sie in der Teradata-Dokumentation.
Parameter¶
TIMESTAMP
Der Datentyp TimeStamp stellt einen bestimmten Zeitpunkt dar, der sowohl die Datums- als auch die Uhrzeitkomponente enthält.
TIME
Der Datentyp Time stellt eine bestimmte Tageszeit ohne eine Datumskomponente dar.
DATE
Der Datentyp Date stellt ein Kalenderdatum ohne Uhrzeitkomponente dar.
PRECISIONDIGITS gibt die Anzahl der Dezimalstellen an, die in numerischen Werten angezeigt werden sollen.
Die Anzahl der Ziffern, die im Uhrzeitformat angezeigt werden sollen
Rückgabewerte¶
Gibt eine Zeichenfolgendarstellung eines Wertes vom Typ PERIOD zurück
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
DAYNAME_LONG_UDF (TIMESTAMP_TZ, VARCHAR)¶
Warnung
Dies ist die benutzerdefinierte Funktion (UDF), die zwei verschiedene Parametertypen akzeptiert.
Definition¶
Gibt den vollständigen Namen eines Wochentags in Großbuchstaben, Kleinbuchstaben oder Großbuchstaben zurück (z. B. „MONDAYׅ“, „monday“ oder „Monday“).
Parameter¶
INPUT TIMESTAMP_TZ
Das Eingabedatum, aus dem der Wochentag ermittelt werden soll
RESULTCASE VARCHAR
Das erwartete Ergebnis oder Szenario, das demonstriert werden soll
Rückgabewerte¶
Gibt eine Zeichenfolge zurück, die den vollständigen Namen eines Wochentags enthält
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
TD_DAY_OF_WEEK_COMPATIBLE_UDF¶
Definition¶
Verarbeitet einen Zeitstempel, um festzustellen, auf welchen Wochentag er fällt. Diese Funktion verhält sich identisch zu DAYNUMBER_OF_WEEK(DATE, 'COMPATIBLE').
Parameter¶
INPUT TIMESTAMP_TZ
Das Eingabedatum, das zur Bestimmung des Wochentags verwendet wird
Rückgabewerte¶
Gibt eine Zahl von 1 bis 7 zurück, die den Wochentag angibt, wobei 1 für den ersten Tag der Woche steht. Wenn der 1. Januar zum Beispiel auf einen Mittwoch fällt, dann ist Mittwoch = 1, Donnerstag = 2, Freitag = 3, Samstag = 4, Sonntag = 5, Montag = 6 und Dienstag = 7.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
JAROWINKLER_UDF¶
Definition¶
Berechnet anhand des Jaro-Winkler-Algorithmus, wie ähnlich zwei Zeichenfolgen sind. Dieser Algorithmus vergibt eine Punktzahl zwischen 0 (völlig unterschiedlich) und 1 (identisch).
Parameter¶
string1 vom Typ VARCHAR
Der zu verarbeitende Text
string2 vom Typ VARCHAR
Der zu verarbeitende Text
Rückgabewerte¶
Die Funktion gibt entweder 0 oder 1 zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
YEAR_BEGIN_ISO_UDF¶
Definition¶
UDF, die den ersten Tag des ISO-Jahres für ein bestimmtes Datum berechnet. Sie ermittelt den Montag, der dem 1. Januar des Jahres am nächsten liegt, mit der Funktion DAYOFWEEKISO in Kombination mit PUBLIC.FIRST_DAY_JANUARY_OF_ISO_UDF. Die Funktion addiert oder subtrahiert Tage, um diesen Montag zu finden.
Parameter¶
INPUT TIMESTAMP_TZ
Das Datum, das den 1. Januar des laufenden Jahres nach dem ISO-Kalenderstandard darstellt
Rückgabewerte¶
Der erste Tag des Jahres nach dem ISO-Kalenderstandard
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
YEAR_PART_UDF¶
Definition¶
Extrahiert das Jahr aus einem Datum und kürzt es auf eine bestimmte Anzahl von Ziffern
Parameter¶
INPUT TIMESTAMP_TZ
Das Datum, aus dem das Jahr extrahiert werden soll
DIGITS: Eine ganze Zahl, die die maximale Anzahl der anzuzeigenden Ziffern angibt
Die Anzahl der gewünschten Dezimalstellen in der Ausgabe
Rückgabewerte¶
Extrahiert die Jahreskomponente aus einem angegebenen Datum
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
YEAR_WITH_COMMA_UDF¶
Definition¶
Extrahiert das Jahr aus einem Datum und fügt ein Komma zwischen der ersten und zweiten Ziffer ein. Wenn das Jahr zum Beispiel 2023 ist, wird „2,023“ zurückgegeben.
Parameter¶
INPUT TIMESTAMP_TZ
Das Eingabedatum, aus dem das Jahr extrahiert werden soll
Rückgabewerte¶
Gibt den Jahresanteil eines Datumswertes als varchar (Text) mit einem Komma als Trennzeichen zurück
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
MONTHS_BETWEEN_UDF¶
Definition¶
Berechnet die Anzahl der Monate zwischen zwei Daten
Parameter¶
FIRST_DATE ist eine Zeitstempelspalte, die sowohl Datums- als auch Uhrzeitinformationen enthält, mit Unterstützung der Zeitzone (TIMESTAMP_LTZ)
Das Anfangsdatum, ab dem die Funktion mit der Verarbeitung von Daten beginnt
SECOND_DATE TIMESTAMP_LTZ
Das Enddatum, das festlegt, wann die Zählung beendet wird
Rückgabewerte¶
Die Dauer in Monaten zwischen zwei Daten
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
SECONDS_PAST_MIDNIGHT_UDF¶
Definition¶
Berechnet die Anzahl der seit Mitternacht verstrichenen Sekunden für eine bestimmte Uhrzeit
Parameter¶
INPUT TIME
Die Funktion berechnet die Gesamtzahl der seit Mitternacht (00:00:00) bis zur aktuellen Uhrzeit verstrichenen Sekunden.
Rückgabewerte¶
Ein varchar-Wert, der die Anzahl der seit Mitternacht verstrichenen Sekunden angibt
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
CHAR2HEXINT_UDF¶
Definition¶
Gibt eine Zeichenfolge zurück, die die Hexadezimaldarstellung (base-16) jedes Zeichens in der Eingabezeichenfolge enthält
Parameter¶
INPUT_STRING ist eine Variable vom Typ VARCHAR, die Textdaten speichert.
Die Eingabezeichenfolge, die konvertiert werden muss
Rückgabewerte¶
Gibt eine Zeichenfolge zurück, die die Hexadezimaldarstellung der Eingabezeichenfolge enthält
Beispiel¶
Eingabe:
Ausgabe:
Weitere Informationen aus der Quellfunktion¶
Die Funktionsdokumentation finden Sie in der Teradata-Dokumentation.
INTERVAL_ADD_UDF¶
Definition¶
UDFs (benutzerdefinierte Funktionen), die Subtraktionsoperationen zwischen einem Intervallwert und einer Spaltenreferenz vom Typ Intervall verarbeiten
Parameter¶
INPUT_VALUE1 vom Typ VARCHAR
Die Eingabedaten, die vom System verarbeitet werden sollen
INPUT_PART1 vom Typ VARCHAR
Die zu verwendende Zeiteinheit, z. B. HOUR
INPUT_VALUE2 ist ein Parameter vom Datentyp VARCHAR.
Der Name der referenzierten Spalte, z. B. INTERVAL_HOUR_TYPE
INPUT_PART2 VARCHAR
Der Datentyp, der der referenzierten Spalte zugewiesen wurde
OP-Zeichen
Das Symbol oder der Operator, das bzw. der gerade analysiert wird
OUTPUT_PART VARCHAR
Der Datentyp des zurückgegebenen Wertes
Rückgabewerte¶
Ein varchar-Wert, der das Ergebnis der Subtraktion zweier Zeitintervalle darstellt
Migrationsbeispiel¶
Eingabe:
Ausgabe:
DAY_OF_WEEK_LONG_UDF¶
Definition¶
Eine benutzerdefinierte Funktion (UDF), die einen Zeitstempel in den vollständigen Namen des Tages konvertiert (z. B. „Monday“, „Tuesday“ usw.)
Parameter¶
INPUT_DATE stellt einen Zeitstempelwert dar.
Der Zeitstempel wird in einen vollständigen Tagesnamen konvertiert (z. B. „Monday“, „Tuesday“ usw.).
Rückgabewerte¶
Der Name des Tages auf Englisch.
TD_WEEK_OF_CALENDAR_UDF¶
Definition¶
Die benutzerdefinierte Funktion (UDF) dient als direkter Ersatz für die Teradaa-Funktion TD_WEEK_OF_CALENDAR und bietet dieselbe Funktionalität in Snowflake.
Parameter¶
INPUT TIMESTAMP_TZ
Datum zur Berechnung der Anzahl der Wochen, die seit dem 1. Januar 1900 verstrichen sind
Rückgabewerte¶
Eine Ganzzahl, die die Anzahl der vollständigen Wochen zwischen dem 1. Januar 1900 und dem angegebenen Datum angibt
Migrationsbeispiel¶
Eingabe:
Ausgabe:
WRAP_NEGATIVE_WITH_ANGLE_BRACKETS_UDF¶
Definition¶
Konvertiert negative Zahlen so, dass statt des Minuszeichens (-) spitze Klammern (< >) verwendet werden Diese Konvertierung erfolgt, wenn das Formatelement PR (Parentheses, Klammern) in der ursprünglichen Teradata-Formatzeichenfolge vorhanden ist.
Parameter¶
INPUT ist ein numerischer Wert.
Der numerische Wert, der in eine Textzeichenfolge (varchar) umgewandelt wird
FORMATARG ist ein Parameter vom Typ VARCHAR, der das Format der Daten angibt.
Der Formatparameter gibt an, wie der INPUT-Wert in eine Textdarstellung (varchar) umgewandelt werden soll.
Rückgabewerte¶
Ein varchar mit negativen Zahlen in spitzen Klammern (< >)
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
INSTR_UDF (STRING, STRING)¶
Warnung
Dies ist die benutzerdefinierte Funktion (UDF), die zwei verschiedene Parametersätze akzeptiert.
Definition¶
Sucht alle Instanzen, in denen „search_string“ im „source_string“ vorkommt.
Parameter¶
SOURCE_STRING steht für die Eingabezeichenfolge, die verarbeitet werden muss.
Der Text, der gesucht werden soll
SEARCH_STRING ist ein Parameter vom Typ STRING, der den Text angibt, nach dem gesucht werden soll.
Das Textmuster, das die Funktion sucht und vergleicht
Rückgabewerte¶
Die Indexposition, an der das Muster in der Quellzeichenfolge gefunden wird (beginnend an Position 1)
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
TRANSLATE_CHK_UDF¶
Definition¶
Überprüft, ob der Code erfolgreich konvertiert werden kann, ohne Fehler zu erzeugen
Parameter¶
COL_NAME ist eine Zeichenfolgenvariable, die einen Spaltennamen darstellt.
Die Spalte, die validiert werden muss.
SOURCE_REPERTOIRE_NAME ist ein Zeichenfolgenparameter, der den Namen des Quellverzeichnisses angibt.
Der Name der Quellsammlung oder -bibliothek
Rückgabewerte¶
0: Die Übersetzung war erfolgreich und wurde ohne Fehler abgeschlossen. NULL: Es wurde kein Ergebnis zurückgegeben (Nullwert).
Die Position des ersten Zeichens in der Zeichenfolge verursacht einen Übersetzungsfehler.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
EXPAND_ON_UDF¶
Bemerkung
Zur besseren Lesbarkeit haben wir einige Abschnitte des Codes in diesem Beispiel vereinfacht.
Definition¶
Repliziert das Verhalten der EXPAND-ON-Funktion von Teradata.
Parameter¶
TIME ist ein Datentyp, der Uhrzeitwerte als Text (STRING) speichert.
Die Zeit, die der Anker für die vollständige Erweiterung benötigt
SEQ: Sequenznummer
Die Reihenfolge, in der die Werte der einzelnen Zeilen berechnet werden
PERIOD: Ein Textwert, der einen Zeitraum darstellt
Das Datum des angegebenen Zeitraums
Rückgabewerte¶
Ein VARCHAR-Wert, der definiert, wie der Erweiterungszeitraum in der EXPAND-ON-Klausel berechnet werden soll
Migrationsbeispiel¶
Eingabe:
Ausgabe:
ROW_COUNT_UDF¶
Definition¶
Gibt ein Array zurück, das fortlaufende Nummern von 1 bis zu dem von DIFF_TIME_PERIOD_UDF zurückgegebenen Wert enthält
Parameter¶
NROWS stellt die Gesamtzahl der Zeilen in einem Datenset als Dezimalzahl dar (DOUBLE).
Der von der Funktion DIFF_TIME_PERIOD_UDF zurückgegebene Wert
Rückgabewerte¶
Ein Array, das die Anzahl der Zeilen bestimmt, die erforderlich sind, um die Funktionalität der EXPAND ON-Klausel zu replizieren
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
Migrationsbeispiel¶
Eingabe:
Ausgabe:
CENTURY_UDF¶
Definition¶
Berechnet das Jahrhundert für ein bestimmtes Datum
Parameter¶
INPUT TIMESTAMP_TZ
Das Eingabedatum, das zur Bestimmung des Jahrhunderts verwendet wird
Rückgabewerte¶
Gibt die Jahrhundertzahl als varchar für ein bestimmtes Datum zurück
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
TIME_DIFFERENCE_UDF¶
Warnung
Diese UDF ist veraltet, da Snowflake jetzt eine integrierte gleichwertige Funktion bietet. Weitere Einzelheiten entnehmen Sie bitte der TIMEDIFF-Dokumentation.
Definition¶
Berechnet das Zeitintervall zwischen zwei angegebenen Zeitstempeln
Parameter¶
MINUEND: Ein Zeitstempelwert, von dem subtrahiert wird
Die vom Ursprungswert zu subtrahierende Zeit
SUBTRAHEND: Der Zeitstempelwert, der von einem anderen Zeitstempel subtrahiert werden soll
Die Zeit wurde subtrahiert.
INPUT_PART ist eine Variable vom Typ VARCHAR, die Eingabedaten speichert.
EXTRACT_PART ist eine Variable vom Typ VARCHAR, die den extrahierten Teil einer Zeichenfolge speichert.
Extrahiert einen numerischen Wert aus einem Zeitintervall
Rückgabewerte¶
Ein Textwert (VARCHAR), der eine bestimmte Uhrzeit angibt
Beispiel¶
Eingabe:
Ausgabe:
INTERVAL_DIVIDE_UDF¶
Definition¶
Eine benutzerdefinierte Funktion (UDF), die Berechnungen zur Intervalldivision durchführt
Parameter¶
INPUT_PART ist eine Variable vom Typ VARCHAR, die den Eingabebereich der Daten darstellt.
Der Wert, der den Intervalltyp angibt, z. B. YEAR TO MONTH
INPUT_VALUE VARCHAR
Das zu teilende Zeitintervall
INPUT_DIV ist ein Ganzzahl-Wert, der den Eingabedivisor darstellt.
Die Zahl, die durch eine andere Zahl dividiert wird
Rückgabewerte¶
Die Ausgabe wird berechnet, indem ein Zeitintervall durch einen numerischen Wert dividiert wird.
Migrationsbeispiel¶
Eingabe:
Ausgabe:
DAYNUMBER_OF_MONTH_UDF¶
Definition¶
Die UDF bestimmt, auf welchen Tag des Monats ein bestimmter Zeitstempel fällt. Sie funktioniert ähnlich wie die Funktion DAYNUMBER_OF_MONTH(DATE, ‚ISO‘) von Teradata.
Parameter¶
INPUT TIMESTAMP_TZ
Ein Datumswert, der verwendet wird, um den entsprechenden Wochentag zu bestimmen
Rückgabewerte¶
Eine ganze Zahl von 1 bis 33 (einschließlich)
Beispiel¶
Eingabe:
Ausgabe:
LAST_DAY_DECEMBER_OF_ISO_UDF¶
Definition¶
UDF (benutzerdefinierte Funktion), die den 31. Dezember verarbeitet und das entsprechende ISO-Jahr zurückgibt. Diese Funktion wird als Komponente der PUBLIC.YEAR_END_IDO_UDF-Berechnung verwendet.
Parameter¶
INPUT TIMESTAMP_TZ
Um den letzten Tag des Dezembers im ISO-Jahresformat zu erhalten, verwenden Sie den 31. Dezember.
Rückgabewerte¶
Ein Datum, das den 31. Dezember im ISO-Jahresformat darstellt
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
DATEADD_UDF¶
Bemerkung
Zur besseren Lesbarkeit haben wir einige Abschnitte des Codes in diesem Beispiel vereinfacht.
Definition¶
Funktion zum Berechnen der Summe von zwei Daten
Parameter¶
FIRST_DATE stellt eine Spalte vom Typ DATE dar.
Der anfängliche Datumswert, der einbezogen werden soll
SECOND_DATE stellt eine Spalte vom Typ DATE dar.
Addiert den zweiten Datumswert zusammen mit first_date.
¶
Rückgabewerte¶
Das Ergebnis ist ein Datum, das aus der Kombination beider Eingabeparameter berechnet wird.
Beispiel¶
Eingabe:
Ausgabe:
JULIAN_TO_DATE_UDF¶
Definition¶
Eine benutzerdefinierte Funktion (UDF), die ein julianisches Datumsformat (YYYYDDD) in ein Standarddatum des Gregorianischen Kalenders (YYYY-MM-DD) konvertiert
Parameter¶
JULIAN_DATE CHAR: Ein Zeichendatentyp, der zum Speichern von Datumsangaben im julianischen Format verwendet wird
Das Datum, das aus dem julianischen Format konvertiert werden soll
Rückgabewerte¶
Gibt die Datumsdarstellung des julianischen Datums zurück oder null, wenn die Konvertierung nicht durchgeführt werden kann
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
Migrationsbeispiel¶
Eingabe:
Ausgabe:
FIRST_DAY_JANUARY_OF_ISO_UDF¶
Definition¶
Der erste Tag des Januars im Kalenderjahr ISO, der von der Funktion PUBLIC.YEAR_BEGIN_ISO_UDF zur Berechnung ihres Ergebnisses verwendet wird
Parameter¶
INPUT TIMESTAMP_TZ
Das Datum, das den 1. Januar darstellt, im ISO-Kalenderjahrformat
Rückgabewerte¶
Ein Datum, das den 1. Januar des angegebenen ISO-Kalenderjahres darstellt.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
TIMESTAMP_DIFFERENCE_UDF¶
Definition¶
Subtrahieren zweier Daten mit einer benutzerdefinierten Funktion (UDF)
Unterschiede zwischen der Datums-/Uhrzeit-Subtraktion in Teradata und Snowflake¶
Teradata und Snowflake verwenden unterschiedliche Methoden zur Berechnung von Datum und Uhrzeit. Sie unterscheiden sich in ihrer Syntax, den Ausgabedatentypen und den Genauigkeitsstufen.
Syntax: In Teradata werden bei der Subtraktion von DATE, TIMESTAMP und TIME ein Minuszeichen und ein Intervall verwendet, um das Format des Ergebnisses anzugeben. Weitere Einzelheiten finden Sie unter https://docs.teradata.com/r/w19R4KsuHIiEqyxz0WYfgA/7kLLsWrP0kHxbk3iida0mA. Snowflake behandelt diese Vorgänge mit drei Funktionen unterschiedlich:
DATEDIFF (funktioniert mit allen Datumstypen)
TIMESTAMPDIFF
TIMEDIFF – jede Funktion benötigt die beiden zu vergleichenden Datumsangaben und den Datumsteil, der zurückgegeben werden soll. Für die DATE-Typen können Sie auch das Minuszeichen verwenden, das die Differenz in Tagen zurückgibt.
Rückgabetyp: Teradata gibt verschiedene Intervalltypen zurück (siehe https://www.docs.teradata.com/r/T5QsmcznbJo1bHmZT2KnFw/z~5iW7rYVstcmNYbd6Dsjg). Die Funktionen von Snowflake geben einen Ganzzahl-Wert zurück, der die Anzahl der Einheiten angibt. Einzelheiten finden Sie unter https://docs.snowflake.com/en/sql-reference/functions/datediff.html.
Rundung: Die Art und Weise, wie DATEDIFF Datumsteile behandelt, kann zu anderen Ergebnissen führen als bei Teradata. Informieren Sie sich unter https://docs.snowflake.com/en/sql-reference/functions/datediff.html#usage-notes über das Rundungsverhalten.
Warnung
Bei der Durchführung von Datumsberechnungen können die Ergebnisse aufgrund von Rundung oder Zeitzonenunterschieden um einen Tag abweichen.
Parameter¶
MINUEND – ein Zeitstempelwert, von dem subtrahiert wird, stellt den Zeitstempelwert dar, von dem subtrahiert wird.
Das Datum, das als Ausgangspunkt für die Subtraktion verwendet wird
SUBTRAHEND ist ein Zeitstempelwert, der von einem anderen Zeitstempel subtrahiert wird.
Das Datum wurde entfernt.
INPUT_PART ist eine Variable vom Typ VARCHAR (Zeichenfolge mit variabler Länge).
Teile, die zurückgegeben werden müssen
Rückgabewerte¶
Formatiert den Zeichenfolgenwert auf der Grundlage des angegebenen INPUT_PART-Parameters
Beispiel¶
Eingabe:
FIRST_DAY_OF_MONTH_ISO_UDF¶
Definition¶
Die benutzerdefinierte Funktion (UDF) gibt den ersten Tag eines bestimmten Monats im ISO-Format zurück (YYYY-MM-DD).
Parameter¶
YEAR ist ein numerischer Datentyp, der zum Speichern eines vierstelligen Jahreswerts verwendet wird.
Ein numerischer Wert, der ein Kalenderjahr darstellt (z. B. 2023)
MONTH – ein numerischer Wert, der einen Monat darstellt (1–12)
Ein numerischer Wert (1-12), der einen Kalendermonat darstellt.
Rückgabewerte¶
Gibt den ersten Tag des aktuellen Monats im ISO-Format zurück (YYYY-MM-DD).
Beispiel¶
Bemerkung
Diese UDF ist eine Hilfsfunktion, die innerhalb der Funktion DAYNUMBER_OF_MONTH_UDF verwendet wird.
INT_TO_DATE_UDF¶
Definition¶
UDF, um numerische Werte in Datumswerte zu konvertieren (Teradata-Kompatibilitätsfunktion)
Parameter¶
NUMERIC_EXPRESSION stellt einen numerischen Wert oder einen Ausdruck dar, der zu einer Ganzzahl ausgewertet wird.
Ein Wert, der ein Datum in einem bestimmten Format darstellt, z. B. YYYY-MM-DD
Rückgabewerte¶
In ein Datumsformat konvertierte Zahl
Beispiel¶
Eingabe:
Ausgabe:
NULLIFZERO_UDF¶
Definition¶
Ersetzt Nullwerte durch NULL in den Daten, um Fehler bei der Division durch null zu vermeiden
Parameter¶
NUMBER_TO_VALIDATE NUMBER
Die Zahl, die validiert werden muss
Rückgabewerte¶
Gibt null zurück, wenn die eingegebene Zahl null ist; andernfalls wird die ursprüngliche Zahl zurückgegeben.
Verwendungsbeispiel¶
Ausgabe:
DATE_LONG_UDF¶
Definition¶
Konvertiert ein Datum in das Format „Tag, Monat DD, YYYY“ (zum Beispiel „Monday, January 01, 2024“). Dieses Format entspricht dem DL-Datumsformatelement von Teradata.
Parameter¶
INPUT TIMESTAMP_TZ
Das Datum sollte in einem langen Datumsformat angezeigt werden (zum Beispiel: „September 15, 2023“).
Rückgabewerte¶
Ein VARCHAR-Datentyp, der das Teradata-DL-Formatelement darstellt
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
TD_MONTH_OF_CALENDAR_UDF¶
Definition¶
Die benutzerdefinierte Funktion (UDF) dient als Ersatz für die Teradata-Funktion TD_MONTH_OF_CALENDAR und bietet dieselbe Funktionalität.
Parameter¶
INPUT TIMESTAMP_TZ
Datum, das zur Berechnung der Anzahl der seit dem 1. Januar 1900 verstrichenen Monate verwendet wird
Rückgabewerte¶
Eine Ganzzahl, die die Anzahl der Monate zwischen dem 1. Januar 1900 und dem angegebenen Datum angibt
Migrationsbeispiel¶
Eingabe:
Ausgabe:
MONTH_NAME_LONG_UDF¶
Definition¶
Eine benutzerdefinierte Funktion (UDF), die einen Zeitstempel in den entsprechenden vollen Monatsnamen konvertiert
Parameter¶
INPUT DATE
Der Zeitstempel sollte so konvertiert werden, dass der vollständige Monatsname angezeigt wird.
Rückgabewerte¶
Der Name des Monats auf Englisch.
TD_DAY_OF_CALENDAR_UDF¶
Definition¶
Benutzerdefinierte Funktion (UDF), die die Teradata-Funktionalität TO_DAY_OF_CALENDAR repliziert
Parameter¶
INPUT TIMESTAMP_TZ
Datum zur Berechnung der Anzahl der seit dem 1. Januar 1900 verstrichenen Tage
Rückgabewerte¶
Eine Ganzzahl, die die Anzahl der Tage zwischen dem 1. Januar 1900 und dem INPUT-Datum angibt
Migrationsbeispiel¶
Eingabe:
Ausgabe:
PERIOD_TO_TIME_UDF¶
Definition¶
Funktion, die einen Teradata-PERIOD-Wert in einen TIME-Wert konvertiert, wobei das Umwandlungsverhalten von Teradata beibehalten wird
Parameter¶
PERIOD_VAL stellt einen Zeitraumwert dar.
Der Zeitraum, der konvertiert werden muss
Rückgabewerte¶
Die Funktion gibt einen TIME-Wert zurück, der die PERIOD darstellt. Wenn die Konvertierung nicht abgeschlossen werden kann, wird null zurückgegeben.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
INSTR_UDF (STRING, STRING, DOUBLE, DOUBLE)¶
Warnung
Diese benutzerdefinierte Funktion (UDF) akzeptiert vier Eingabeparameter.
Definition¶
Sucht alle Instanzen, in denen „search_string“ im „source_string“ vorkommt.
Parameter¶
SOURCE_STRING steht für die Eingabezeichenfolge, die verarbeitet werden muss.
Die Textzeichenfolge, nach der gesucht werden soll.
SEARCH_STRING ist ein Textwert, nach dem Sie suchen möchten.
Das Textmuster, das die Funktion sucht und vergleicht
POSITION DOUBLE – ein numerischer Datentyp, der Dezimalzahlen mit doppelter Genauigkeit speichert.
Die Position im Text, an der die Suche beginnen soll (beginnend an Position 1)
OCCURRENCE DOUBLE – ein numerischer Datentyp, der die Anzahl des Auftretens eines Ereignisses darstellt und als Gleitkommazahl mit doppelter Genauigkeit gespeichert wird
Die Position im Text, an der die Suche beginnen soll (beginnend an Position 1)
Rückgabewerte¶
Die Indexposition, an der sich der angegebene Text in der Quellzeichenfolge befindet
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
ROUND_DATE_UDF¶
Definition¶
Eine benutzerdefinierte Funktion (UDF), die einen DATE_VALUE verarbeitet, indem sie den Uhrzeitanteil auf eine bestimmte Einheit rundet (UNIT_TO_ROUND_BY). Diese Funktion ist vergleichbar mit der Teradata-Funktion ROUND(date).
Parameter¶
DATE_TO_ROUND TIMESTAMP_TZ – ein Zeitstempelwert mit Zeitzoneninformationen, der gerundet werden muss
Der Datumswert, der gerundet werden muss
UNIT_TO_ROUND_BY VARCHAR – gibt die Zeiteinheit an, die für die Rundung verwendet wird
Die Zeiteinheit, die für die Rundung des Datums verwendet wird
Rückgabewerte¶
Gibt ein auf die angegebene Zeiteinheit gerundetes Datum zurück Der Parameter UNIT_TO_ROUND_BY bestimmt, wie das Datum gerundet werden soll.
Migrationsbeispiel¶
Eingabe:
Ausgabe:
SUBSTR_UDF (STRING, FLOAT, FLOAT)¶
Warnung
Dies ist die benutzerdefinierte Funktion (UDF), die drei Parameter akzeptiert.
Definition¶
Ruft einen Teil des Textes aus einer angegebenen Zeichenfolge unter Verwendung von Anfangs- und Endpositionen ab
Parameter¶
BASE_EXPRESSION ist ein Zeichenfolgenparameter, der den Basisausdruck definiert.
Der Quelltext, aus dem Sie einen Teil extrahieren möchten
START_POSITION ist eine Gleitkommazahl, die die Anfangsposition definiert.
Die Position, an der Sie mit der Extraktion der Zeichen aus der Zeichenfolge beginnen möchten
LENGTH ist eine Gleitkommazahl, die den Längenwert darstellt.
Die Position, an der Sie mit der Extraktion der Zeichen aus der Zeichenfolge beginnen möchten
Rückgabewerte¶
Die Teilzeichenfolge, die enthalten sein muss
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
GETQUERYBANDVALUE_UDF (VARCHAR)¶
Warnung
Dies ist die benutzerdefinierte Funktion (UDF), die einen Parameter akzeptiert.
Definition¶
Gibt einen Wert aus einem im Transaktions-, Sitzungs- oder Profilabfrageband gespeicherten Name-Wert-Paar zurück.
Parameter¶
SEARCHNAME VARCHAR – eine Variable vom Typ VARCHAR, die zum Speichern von Suchbegriffen oder Namen verwendet wird
Der Name, nach dem in den Schlüssel-Wert-Paaren gesucht werden soll
Rückgabewerte¶
Der name-Schlüsselwert des Sitzungsabfragebandes oder null, falls nicht vorhanden.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
Migrationsbeispiel¶
Eingabe:
Ausgabe:
TD_WEEK_OF_YEAR_UDF¶
Definition¶
Benutzerdefinierte Funktion (UDF), die die volle Wochennummer eines bestimmten Datums innerhalb des Jahres berechnet. Diese Funktion bietet die gleiche Funktionalität wie die Funktionen TD_WEEK_OF_YEAR und WEEKNUMBER_OF_YEAR von Teradata.
Parameter¶
INPUT TIMESTAMP_TZ
Datum, das für die Berechnung der Wochennummer verwendet wird
Rückgabewerte¶
Ein numerischer Wert, der angibt, in welche Woche des Jahres das angegebene Datum fällt
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
EXTRACT_TIMESTAMP_DIFFERENCE_UDF¶
Bemerkung
Für eine bessere Lesbarkeit haben wir die Codebeispiele vereinfacht, indem wir nur die wichtigsten Teile zeigen.
Definition¶
Ruft den Teil „Data“ aus dem Ergebnis der Subtraktion des SUBTRAHEND vom MINUEND ab
Unterschiede zwischen der Datums-/Uhrzeitextraktion in Teradata und Snowflake¶
Teradata- und Snowflake-Funktionen können unterschiedliche Parameteranforderungen haben und unterschiedliche Datentypen zurückgeben.
Parameter: Der wichtigste Unterschied zwischen den EXTRACT-Funktionen von Teradata und Snowflake ist, dass Snowflake nur mit Datums- und Uhrzeitangaben arbeitet, während Teradata auch Intervalle unterstützt. Weitere Einzelheiten finden Sie in der Dokumentation der EXTRACT-Funktion von Snowflake und in der Dokumentation der EXTRACT-Funktion in Teradata.
Rückgabetyp: Die Funktionen geben Werte auf unterschiedliche Weise zurück: EXTRACT von Teradata gibt entweder eine Ganzzahl oder decimal(8, 2) zurück, während EXTRACT von Snowflake eine Zahl zurückgibt, die den angeforderten Datums-Uhrzeit-Teil darstellt.
Die Teradata- und Snowflake-Funktionen können unterschiedliche Eingabeparameter und Ausgabetypen haben.
Parameter¶
MINUEND TIMESTAMP
Das Datum, das als Ausgangspunkt für die Subtraktion verwendet wird
SUBTRAHEND: Der Zeitstempelwert, der von einem anderen Zeitstempel subtrahiert werden soll
Das Datum wurde entfernt.
INPUT_PART VARCHAR
Das formatierte varchar muss mit dem ursprünglich angeforderten Teil übereinstimmen (identisch mit TIMESTAMP_DIFERENCE INPUT_PART) und einer der folgenden Werte sein:
'DAY TO HOUR''DAY TO MINUTE''DAY TO SECOND''DAY TO MINUTE''HOUR TO MINUTE''HOUR TO SECOND''MINUTE TO SECOND'
EXTRACT_PART ist vom VARCHAR-Datentyp und stellt den extrahierten Teil einer Zeichenfolge dar.
Die Zeiteinheit für die Extraktion muss einer der folgenden Werte sein: 'DAY', 'HOUR', 'MINUTE', oder 'SECOND'. Die angeforderte Zeiteinheit sollte innerhalb des eingegebenen Zeitintervalls liegen.
Rückgabewerte¶
Die Anzahl der Anfragen, die in den Extraktionsprozess einbezogen wurden
Beispiel¶
Eingabe:
Ausgabe:
JSON_EXTRACT_DOT_NOTATION_UDF¶
Definition¶
Eine benutzerdefinierte Funktion (UDF), mit der Sie JSON-Objekte unter Verwendung der Punktnotation abfragen können, ähnlich wie Sie auf verschachtelte Eigenschaften in JavaScript oder Python zugreifen würden.
Unterschiede zwischen der Teradata-JSON Entitätsreferenz (Punktnotation) und der Snowflake-JSON-Abfragemethode¶
Teradata und Snowflake verwenden unterschiedliche Methoden, um JSON-Daten zu durchlaufen. Teradata verwendet einen JavaScript-basierten Ansatz mit Punktnotation, Array-Indizierung und speziellen Operatoren wie Platzhalterzugriff und Doppelpunktnotation. Im Gegensatz dazu verfügt Snowflake über eingeschränktere JSON-Durchlauffunktionen und unterstützt nur den direkten Elementzugriff und direkte Array-Indizierung.
Parameter¶
JSON_OBJECT – ein Datentyp, der ein JSON-Objekt darstellt, das verschachtelte Schlüssel-Wert-Paare mit unterschiedlichen Datentypen enthalten kann
Das JSON-Objekt, das die Werte enthält, die Sie extrahieren möchten
JSON_PATH – ein Zeichenfolgenparameter, der den Pfad zum Extrahieren von Daten aus einem JSON-Dokument angibt
Die Position im JSON_OBJECT, an der die Werte gefunden werden können, angegeben in JSON-Pfadnotation
Rückgabewerte¶
Die Datenelemente im JSON_OBJECT, die mit dem angegebenen JSON_PATH übereinstimmen
Migrationsbeispiel¶
Eingabe:
Ausgabe:
WEEK_OF_MONTH_UDF¶
Definition¶
Berechnet, in welche Woche des Monats ein bestimmtes Datum fällt
Parameter¶
INPUT TIMESTAMP_TZ
Das Datum, das verwendet wird, um zu bestimmen, in welche Woche des Monats es fällt
Rückgabewerte¶
Eine VARCHAR-Spalte, die anzeigt, in welche Woche des Monats ein bestimmtes Datum fällt
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
DAYNAME_LONG_UDF (TIMESTAMP_TZ)¶
Warnung
Dies ist die benutzerdefinierte Funktion (UDF), die einen Parameter akzeptiert.
Definition¶
UDF, die eine Variante der DAYNAME_LONG_UDF-Funktion erstellt, die Tagesnamen mit dem ersten Buchstaben in Großbuchstaben zurückgibt (Standardformat)
Parameter¶
INPUT TIMESTAMP_TZ
Das Datum, anhand dessen Sie den Wochentag ermitteln möchten
Rückgabewerte¶
Gibt eine Zeichenfolge zurück, die den vollständigen Namen eines Wochentags enthält
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
INTERVAL_TO_MONTHS_UDF¶
Definition¶
Konvertiert ein Zeitintervall in Monate
Parameter¶
INPUT_VALUE VARCHAR
Der Zeitraum, der in Monate umgewandelt wird
Rückgabewerte¶
Die Anzahl der zu verarbeitenden Monate, angegeben als Ganzzahl
GETQUERYBANDVALUE_UDF (VARCHAR, FLOAT, VARCHAR)¶
Warnung
Diese benutzerdefinierte Funktion (UDF) akzeptiert drei Parameter.
Definition¶
Gibt einen Wert aus einem im Transaktions-, Sitzungs- oder Profilabfrageband gespeicherten Name-Wert-Paar zurück. Der Wert ist mit einem bestimmten Namen im Abfrageband verknüpft.
Parameter¶
QUERYBAND ist vom Datentyp VARCHAR und speichert Abfragebandinformationen.
Das Abfrageband kombiniert Transaktions-, Sitzungs- und Profilabfragebänder in einer einzigen Zeichenfolge.
SEARCHTYPE ist ein Gleitkommazahl-Datentyp.
Die maximale Tiefe, in der nach übereinstimmenden Paaren gesucht werden soll.
0 steht für einen Platzhalterwert, der mit jeder Eingabe übereinstimmt.
Eine Transaktion stellt eine einzelne Arbeitseinheit in einer Datenbank dar.
Ein Sitzungsobjekt stellt eine Verbindung mit Snowflake dar.
3 = Profil erstellen
SEARCHNAME VARCHAR
Der Name, nach dem in den Schlüssel-Wert-Paaren gesucht werden soll
Rückgabewerte¶
Gibt den Wert des name-Schlüssels auf der angegebenen Ebene in der Hierarchie zurück. Wenn kein Wert gefunden wird, wird null zurückgegeben.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
Migrationsbeispiel¶
Eingabe:
Ausgabe:
JULIAN_DAY_UDF¶
Definition¶
Berechnet die julianische Tageszahl, die die kontinuierliche Zählung der Tage seit dem 1. Januar 4713 BCE (Before Common Era, vor unserer Zeitrechnung) darstellt. Der Julianische Tag wird in der Astronomie und bei Kalenderberechnungen verwendet.
Parameter¶
INPUT TIMESTAMP_TZ
Das Datum, das in eine julianische Tageszahl konvertiert wird
Rückgabewerte¶
Ein varchar-Wert, der das berechnete julianische Datum darstellt
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
WEEKNUMBER_OF_MONTH_UDF¶
Definition¶
Identifiziert den Monat anhand eines bestimmten Datums
Parameter¶
INPUT TIMESTAMP_TZ
Das Datum, aus dem die Monatszahl berechnet wird
Rückgabewerte¶
Ein numerischer Wert, der den Monat (1–12) eines bestimmten Datums angibt
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
JSON_EXTRACT_UDF¶
Definition¶
Eine benutzerdefinierte Funktion (UDF), die das Verhalten der Funktionen JSONExtract, JSONExtractValue und JSONExtractLargeValue imitiert. Diese UDF ermöglicht es Ihnen, mehrere Werte aus einem JSON-Objekt zu extrahieren.
Parameter¶
JSON_OBJECT ist von einem Datentyp, der JSON-formatierte Daten in einem strukturierten Format speichert.
Das JSON-Objekt, das die Werte enthält, die Sie extrahieren möchten
JSON_PATH – eine Zeichenfolge, die den Pfad zum Extrahieren von Daten aus einem JSON-Dokument angibt
Die Position im JSON_OBJECT, an der die gewünschten Werte zu finden sind, angegeben in JSON-Pfadnotation
SINGLE_VALUE – ein boolesches Flag, das angibt, ob ein einzelner Wert oder mehrere Werte zurückgegeben werden sollen
BOOLEAN-Parameter: Wenn er auf true gesetzt ist, gibt er einen einzelnen Wert zurück (erforderlich für die Funktionen JSONExtractValue und JSONExtractLargeValue). Wenn false, wird ein Array von Werten zurückgegeben (wird mit JSONExtractverwendet).
Rückgabewerte¶
Die Datenwerte, die unter dem angegebenen JSON-Pfad im JSON-Objekt gefunden wurden.
Migrationsbeispiel¶
Eingabe:
Ausgabe:
COMPUTE_EXPAND_ON_UDF¶
Definition¶
Bestimmt, wie die Daten auf der Grundlage des angegebenen Zeitraumtyps erweitert werden sollen
Parameter¶
TIME STRING
Der im Anker verwendete Zeitstempel
SEQ: Sequenznummer
Die Reihenfolge, in der die Berechnungen der einzelnen Zeilen durchgeführt werden
PERIOD stellt einen Zeitstempelwert dar, der einen bestimmten Zeitpunkt angibt.
Das Datum des angegebenen Zeitraums
PERIODTYPE ist ein Zeichenfolgenwert, der den Typ des Zeitraums definiert.
Der für die Berechnung verwendete Zeitraum (entweder BEGIN oder END)
Rückgabewerte¶
Ein Zeitstempel, der angibt, wann jede Zeile in der EXPAND-ON-Operation verarbeitet wurde
Beispiel¶
Warnung
Diese UDF ist eine abgeleitete Funktion, die die Funktionalität von EXPAND_ON_UDF erweitert.
WEEK_NUMBER_OF_QUARTER_UDF¶
Definition¶
Gibt die Wochennummer innerhalb des aktuellen Quartals für ein bestimmtes Datum zurück. Diese Funktion verhält sich genauso wie die Funktion WEEKNUMBER_OF_QUARTER(DATE, 'ISO') von Teradata, die das ISO-Kalendersystem verwendet.
Parameter¶
INPUT TIMESTAMP_TZ
Das Datum, anhand dessen berechnet wird, in welche Woche des Quartals es fällt
Rückgabewerte¶
Eine Ganzzahl, die angibt, welche Woche des Quartals (1–13) referenziert wird
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
YEAR_END_ISO_UDF¶
Definition¶
Benutzerdefinierte Funktion (UDF), die den letzten Tag des Jahres für ein bestimmtes Datum unter Verwendung der ISO-Kalenderstandards berechnet, ähnlich wie die Funktion TD_YEAR_END von Teradata
Parameter¶
INPUT DATE
Das Datum, das den letzten Tag des Jahres nach dem ISO-Kalenderstandard darstellt
Rückgabewerte¶
Der letzte Tag des Jahres nach dem ISO-Kalendersystem
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
INSERT_CURRENCY_UDF¶
Definition¶
Fügen Sie das Währungssymbol direkt vor der ersten Ziffer der Zahl ein, und achten Sie darauf, dass sich zwischen dem Währungssymbol und der Zahl keine Leerzeichen oder Symbole befinden.
Parameter¶
INPUT VARCHAR
Die Ausgabe von TO_CHAR bei der Konvertierung eines numerischen Wertes, der eine Währungsformatierung erfordert
CURRENCYINDEX ist ein Ganzzahl-Wert, der den Index einer Währung darstellt.
Die Position im Array, an der die Währung eingefügt werden soll
CURRENCYVALUE – ein VARCHAR-Feld, das Währungswerte speichert
Der Text, der als Währungswert verwendet werden soll
Rückgabewerte¶
Ein varchar-Feld, das den Währungstext an einer bestimmten Position enthält
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
INSTR_UDF (STRING, STRING, INT)¶
Warnung
Diese benutzerdefinierte Funktion (UDF) akzeptiert drei Parameter.
Definition¶
Sucht alle Instanzen, in denen „search_string“ im „source_string“ vorkommt.
Parameter¶
SOURCE_STRING stellt einen Zeichenfolgenwert dar, der als Eingabe verwendet wird.
Der Text, der gesucht werden soll
SEARCH_STRING ist ein Textwert, nach dem Sie suchen möchten.
Das Textmuster, das die Funktion sucht und vergleicht
POSITION ist ein Ganzzahl-Datentyp, der eine Position in einer Sequenz darstellt.
Die Position im Text, an der die Suche beginnt (beginnend an Position 1)
Rückgabewerte¶
Die Position in der ursprünglichen Zeichenfolge, an der die Übereinstimmung gefunden wurde
Verwendungsbeispiel¶
Eingabe:
Ausgabe: