SnowConvert AI – Funktionsreferenzen für SQL Server¶
ISNUMERIC_UDF¶
Definition¶
Diese benutzerdefinierte Funktion (User-Defined Function, UDF) bestimmt, ob ein Ausdruck ein gültiger numerischer Typ ist.
Parameter¶
EXPR VARCHAR
Der auszuwertende Ausdruck.
Rückgabewerte¶
Gibt 1 zurück, wenn der Eingabeausdruck zu einem gültigen numerischen Datentyp ausgewertet wird; andernfalls gibt er 0 zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
PATINDEX_UDF¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) gibt die Startposition des ersten Vorkommens eines Musters in einem angegebenen Ausdruck zurück oder Nullen, wenn das Muster nicht gefunden wird.
Parameter¶
PATTERN VARCHAR
Das Muster, nach dem Sie suchen.
EXPRESSION VARCHAR
Der Ausdruck, der gerade ausgewertet wird.
Rückgabewerte¶
Gibt eine Ganzzahl mit der Startposition des Musters zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
ERROR_SEVERITY_UDF¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) ruft einen Wert ab, der den Schweregrad eines Fehlers angibt. Der Standardwert ist immer 16.
Parameter¶
Keine Eingabeparameter.
Rückgabewerte¶
Gibt eine Zeichenfolge mit dem Wert zurück, der dem SQL-Variablennamen ERROR_SEVERITY zugeordnet ist.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
TRANSFORM_SP_EXECUTE_SQL_STRING_UDF(STRING, STRING, ARRAY, ARRAY)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) emuliert das Verhalten von eingebetteten Parametern (Datenbindung) in der SP_EXECUTESQL-Systemprozedur, indem sie deren Werte direkt in der SQL-Zeichenfolge ersetzt.
Außerdem werden die OUTPUT-Parameter aus der Zeichenfolge entfernt, da dies außerhalb der EXECUTE IMMEDIATE-Prozedur geschieht, in die die SP_EXECUTESQL-Prozedur transformiert wird.
Weitere Informationen finden Sie in der SP_EXECUTESQL-Übersetzungsspezifikation.
Parameter¶
_SQL_STRING STRING
Die umzuwandelnde Zeichenfolge.
_PARAMS_DEFINITION STRING
Die ursprüngliche Parameterdefinition überprüft die Reihenfolge, in der die Parameterwerte zugewiesen werden müssen.
_PARAMS_NAMES ARRAY
Das Array der Parameternamen, die die Werte in der SQL-Zeichenfolge ersetzen sollen.
_PARAMS_VALUES ARRAY
Das Array der Parameterwerte, die in der SQL-Zeichenfolge ersetzt werden sollen.
Rückgabewerte¶
Gibt einen STRING zurück, in dem die eingebetteten Parameterwerte ersetzt wurden.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
TABLE_OBJECT_ID_UDF (VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) überprüft, ob eine Tabelle mit einem bestimmten Namen schon einmal erstellt worden ist.
Parameter¶
NAME VARCHAR
Der Tabellenname, der ausgewertet werden soll.
Rückgabewerte¶
Gibt einen booleschen Ausdruck zurück, der vom Vorhandensein der Tabelle abhängt.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
ERROR_PROCEDURE_UDF¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) gibt den Wert zurück, der dem SQL-Variablennamen ERROR_PROCEDURE zugeordnet ist.
Parameter¶
Keine Eingabeparameter.
Rückgabewerte¶
Gibt eine Zeichenfolge mit dem Wert zurück, der dem SQL-Variablennamen ERROR_PROCEDURE zugeordnet ist.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
DB_ID_UDF(STRING)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) emuliert die Funktionalität von DB_ID.
Parameter¶
p_datenbank_name STRING
Der Name der Datenbank, deren ID abgerufen werden soll.
Rückgabewerte¶
Returns an id which corresponds to the number assigned to the database when it is created. This number is assigned consecutively.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
Warnung
Wenn die Datenbank nicht existiert, wird null zurückgegeben.
ERROR_LINE_UDF¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) gibt den Wert zurück, der dem SQL-Variablennamen ERROR_LINE zugeordnet ist.
Parameter¶
Keine Eingabeparameter.
Rückgabewerte¶
Gibt eine Zeichenfolge mit dem Wert zurück, der dem SQL-Variablennamen ERROR_LINE zugeordnet ist.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
FUNCTION_OBJECT_ID_UDF (VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) überprüft, ob eine Funktion mit einem bestimmten Namen bereits erstellt wurde.
Parameter¶
NAME VARCHAR
Der Funktionsname, der überprüft werden soll.
Rückgabewerte¶
Gibt einen booleschen Ausdruck zurück, der vom Vorhandensein der Funktion abhängt.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
CONSTRAINT_OBJECT_ID_UDF (VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) überprüft, ob eine Einschränkung mit einem bestimmten Namen bereits erstellt wurde.
Parameter¶
NAME VARCHAR
Der Einschränkungsname, der überprüft werden soll.
Rückgabewerte¶
Gibt einen booleschen Ausdruck zurück, der vom Vorhandensein der Einschränkung abhängt.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
FOR_XML_UDF (OBJECT, VARCHAR, VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) konvertiert ein Objekt in XML.
Parameter¶
OBJ OBJECT
Zu konvertierendes Objekt.
ELEMENT_NAME VARCHAR
Elementname, den das Objekt erhalten soll.
ROOT_NAME VARCHAR
Der Stammname für XML.
Rückgabewerte¶
Gibt ein varchar im XML-Format zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
OBJECT_ID_UDF (VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) überprüft, ob ein Objekt mit einem bestimmten Namen schon einmal erstellt worden ist.
Parameter¶
NAME VARCHAR
Der Objektname, das überprüft werden soll.
Rückgabewerte¶
Gibt einen booleschen Ausdruck zurück, der vom Vorhandensein des Objekts abhängt.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
PROCEDURE_OBJECT_ID_UDF (VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) überprüft, ob eine Prozedur mit einem bestimmten Namen schon einmal erstellt worden ist.
Parameter¶
NAME VARCHAR
Der Prozedurname, der überprüft werden soll.
Rückgabewerte¶
Gibt einen booleschen Ausdruck zurück, der vom Vorhandensein der Prozedur abhängt.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
ISDATE_UDF¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) bestimmt, ob der Eingabewert ein gültiges Datum ist.
Parameter¶
DATE_VALUE STRING
Das Datum, das ausgewertet werden soll.
Rückgabewerte¶
Gibt 1 zurück, wenn der Eingabeausdruck als gültiger Datumsdatentyp ausgewertet wird; gibt andernfalls 0 zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
ERROR_NUMBER_UDF¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) gibt den Wert zurück, der dem SQL-Variablennamen ERROR_NUMBER zugeordnet ist.
Parameter¶
Keine Eingabeparameter.
Rückgabewerte¶
Gibt eine Zeichenfolge mit dem Wert zurück, der dem SQL-Variablennamen ERROR_NUMBER zugeordnet ist.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
OFFSET_FORMATTER (VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) ist eine Hilfsfunktion zur Formatierung der Offset-Stunde und ihres Präfix-Operators.
Parameter¶
offset_hrs VARCHAR
Der Wert, der formatiert werden soll.
Rückgabewerte¶
Gibt einen varchar-Wert mit der formatierten Ausgabe für den Offset zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
OPENXML_UDF¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) erzeugt eine Abfrage aus einer XML-Auslesung.
Parameter¶
XML VARCHAR
Der XML-Inhalt als varchar.
PATH VARCHAR
Der Pfad des zu extrahierenden Knotens.
Rückgabewerte¶
Gibt eine Tabelle mit den Daten zurück, die durch die XML-Auslesung generiert wurden.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
| Value | |
|---|---|
| 1 | { "order": { "$name": "order", "customer": [ { "customer": { "$name": "customer", "@contactName": "Test ABC", "@customerID": "CUST001", "iceCreamOrder": [ { "iceCreamOrder": { "$name": "iceCreamOrder", "@employeeID": 101, "@orderDate": "2023-05-15T14:30:00", "@orderID": "ORD001", "iceCreamDetail": [ { "iceCreamDetail": { "$name": "iceCreamDetail", "@productID": "001", "@quantity": 2 } }, { "iceCreamDetail": { "$name": "iceCreamDetail", "@productID": "003", "@quantity": 1 } } ] } } ] } } ] } } |
| 2 | { "order": { "$name": "order", "customer": [ { "customer": { "$name": "customer", "@contactName": "Test XYZ", "@customerID": "CUST002", "iceCreamOrder": [ { "iceCreamOrder": { "$name": "iceCreamOrder", "@employeeID": 102, "@orderDate": "2023-06-20T12:45:00", "@orderID": "ORD002", "iceCreamDetail": [ { "iceCreamDetail": { "$name": "iceCreamDetail", "@productID": "005", "@quantity": 3 } }, { "iceCreamDetail": { "$name": "iceCreamDetail", "@productID": "007", "@quantity": 2 } } ] } } ] } } ] } } |
QUOTENAME_UDF (VARCHAR, VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) erstellt einen gültigen durch Trennzeichen getrennten SQL Server-Bezeichner, indem sie eine Unicode-Zeichenfolge mit den hinzugefügten Trennzeichen zurückgibt.
Parameter¶
STR VARCHAR
Die umzuwandelnde Zeichenfolge.
QUOTECHAR VARCHAR
Das Trennzeichen, das dem ersten Parameter hinzugefügt wird.
Rückgabewerte¶
Gibt ein varchar zurück, wobei das zweite Parametertrennzeichen als Trennzeichen hinzugefügt wurde.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
UPDATE_ERROR_VARS_UDF (STRING, STRING, STRING)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) aktualisiert die Fehlervariablen in einer Umgebung, damit Sie wissen, wann die Prozedur einen Fehler auslöst.
Parameter¶
STATE STRING
Der Status der Fehlermeldung.
MESSAGE STRING
Die Nachricht, die in der Fehlermeldung angezeigt werden soll.
SEVERITY STRING
Der Schweregrad des Fehlers.
Rückgabewerte¶
Gibt einen Zeichenfolgenwert mit den neuen Fehlermeldungsinformationen zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
ROUND_MILLISECONDS_UDF (TIMESTAMP_TZ)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) rundet die Millisekunden in Schritten von 0, 3 oder 7 Millisekunden. Transact rundet automatisch die Millisekunden von Datetime-Werten.
Parameter¶
INPUT TIMESTAMP_TZ
Die zu rundende Eingabezeit.
Rückgabewerte¶
Gibt denselben TIMESTAMP_TZ-Eingabewert, aber mit gerundeten Millisekunden zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
CAST_NUMERIC_TO_TIMESTAMP_TZ_UDF (NUMBER)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wird verwendet, um einen numerischen Wert in timestamp_tz umzuwandeln.
Parameter¶
INPUT NUMBER
Die umzuwandelnde Zahl.
Rückgabewerte¶
Gibt einen timestamp_tz-Wert mit der aktuellen Zeitzone zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
IDENTITY_UDF¶
Definition¶
Diese benutzerdefinierte Funktion (User-Defined Function, UDF) bestimmt, ob ein Ausdruck ein gültiger numerischer Typ ist.
Parameter¶
Keine Eingabeparameter.
Rückgabewerte¶
Gibt einen ganzzahligen Ausdruck zurück.
Verwendungsbeispiel¶
Warnung
Zur Unterstützung der Logik wird eine Sequenz generiert.
Eingabe:
Ausgabe:
FOR_XML_UDF (OBJECT, VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) konvertiert ein Objekt in XML.
Parameter¶
OBJ OBJECT
Zu konvertierendes Objekt.
ELEMENT_NAME VARCHAR
Elementname, den das Objekt erhalten soll.
Rückgabewerte¶
Gibt ein varchar im XML-Format zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
QUOTENAME_UDF (VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) erstellt einen gültigen durch Trennzeichen getrennten SQL Server-Bezeichner, indem sie eine Unicode-Zeichenfolge mit den hinzugefügten Trennzeichen zurückgibt.
Parameter¶
STR VARCHAR
Die umzuwandelnde Zeichenfolge.
Rückgabewerte¶
Gibt ein varchar zurück, dem ein durch Trennzeichen getrennter Bezeichner hinzugefügt wurde.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
VIEW_OBJECT_ID_UDF (VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) überprüft, ob eine Ansicht mit einem bestimmten Namen schon einmal erstellt worden ist.
Parameter¶
NAME VARCHAR
Der zu überprüfende Ansichtsname.
Rückgabewerte¶
Gibt einen booleschen Ausdruck zurück, der vom Vorhandensein der Ansicht abhängt.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
SUBTRACT_TIMESTAMP_TZ_UDF (TIMESTAMP_TZ, TIMESTAMP_TZ)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) konvertiert beide Eingaben in die Zeitzone der Systemsitzung und subtrahiert die Datumsangaben (FIRST_DATE - SECOND_DATE), wobei 1900-01-01 00:00:00.000 als Nullwert verwendet wird. Wenn ein Wert die Zeitzone nicht enthält, wird die Zeitzone der aktuellen Sitzung verwendet.
Parameter¶
FIRST_DATE TIMESTAMP_TZ
Das erste Datum, von dem subtrahiert wird.
SECOND_DATE TIMESTAMP_TZ
Das zweite Datum, von dem subtrahiert wird.
Rückgabewerte¶
Gibt die Differenz zwischen den beiden Eingabedatumsangaben zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
STR_UDF (FLOAT, VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) ist eine Vorlage für die Übersetzung der Funktionalität von SQL Server-STR() in Snowflake, wenn sie mit einem oder zwei optionalen Parametern verwendet wird
Parameter¶
FLOAT_EXPR FLOAT
Der zu verarbeitende Ausdruck.
FORMAT VARCHAR
Das anzuwendende Format.
Rückgabewerte¶
Gibt ein varchar mit dem formatierten Ausdruck zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
XML_JSON_SIMPLE¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) generiert ein Objekt mit den Informationen aus dem ausgelesenen XML-Wert.
Parameter¶
XML VARIANT
Das zu lesende XML.
Rückgabewerte¶
Gibt ein Objekt mit den verarbeiteten Informationen aus dem XML zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
FORMATMESSAGE_UDF¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) bietet die Funktionalität der SQL Server-Funktion FORMATMESSAGE. Es konstruiert aus einer angegebenen Zeichenfolge eine Meldung aus einer vorhanden Meldung.
Parameter¶
MESSAGE STRING
Die vorhandene Meldungszeichenfolge.
ARGS ARRAY
Die Argumente, die der ersten Meldungszeichenfolge hinzugefügt werden sollen.
Rückgabewerte¶
Gibt eine Zeichenfolge mit der entsprechenden verketteten Meldung in Bezug zu den Positionen des Arguments zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
IS_MEMBER_UDF¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) bestimmt die Windows-Gruppenmitgliedschaft durch Prüfung eines Zugriffstokens.
Parameter¶
ROLE STRING
Der zu überprüfende Rollenname.
Rückgabewerte¶
Gibt für true einen booleschen Ausdruck zurück, wenn der aktuelle Benutzer ein Mitglied der Rolle ist; andernfalls wird false zurückgegeben.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
RAISERROR_UDF (DOUBLE, DOUBLE, DOUBLE, ARRAY)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) löst eine Ausnahme mit einer bestimmten Meldung aus.
Parameter¶
MSG_ID DOUBLE
Die Meldungs-ID der Fehlermeldung.
SEVERITY DOUBLE
Die Schweregradnummer für den Fehler.
STATE DOUBLE
Die Statusnummer für die Fehlermeldung.
PARAMS ARRAY
Die zusätzlichen Informationen der Fehlermeldung.
Rückgabewerte¶
Gibt ein varchar mit einer Fehlermeldung zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
STR_UDF(FLOAT)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) ist eine Vorlage für die Übersetzung der Funktionalität von SQL Server-STR() in Snowflake, wenn sie mit einem oder zwei optionalen Parametern verwendet wird
Parameter¶
FLOAT_EXPR FLOAT
Der zu verarbeitende Ausdruck.
Rückgabewerte¶
Gibt ein varchar mit dem formatierten Ausdruck zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
SWITCHOFFSET_UDF (TIMESTAMP_TZ, VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) gibt einen neuen timestamp_tz-Wert mit der angepassten Zeit für den target_tz-Parameter zurück.
Parameter¶
source_timestamp TIMESTAMP_TZ
Der Quellzeitstempel, der angepasst werden soll.
target_tz varchar
Die zu nehmende Zielzeit.
Rückgabewerte¶
Gibt die formatierte Zielzeit als TIMESTAMP_TZ zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
time_in_paris |
time_in_costa_rica |
|---|---|
2022-10-05 22:00:24.467 +02:00 |
2022-10-05 14:00:24.467 -06:00 |
GET_CURRENT_TIMEZONE_UDF¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) ruft die aktuelle Sitzungs- oder Systemzeitzone als Literal ab.
Parameter¶
Keine Parameter.
Rückgabewerte¶
Gibt einen Literalwert mit der aktuellen Sitzungs- oder Systemzeitzone als Literal zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
UPDATE_ERROR_VARS_UDF (STRING, STRING, STRING, STRING, STRING, STRING)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) aktualisiert die Fehlervariablen in einer Umgebung, damit Sie wissen, wann die Prozedur einen Fehler auslöst.
Parameter¶
LINE STRING
Die Zeile, die sich auf den Fehler bezieht.
CODE STRING
Der mit der Fehlermeldung verbundene Fehlercode.
STATE STRING
Der Status der Fehlermeldung.
MESSAGE STRING
Die Nachricht, die in der Fehlermeldung angezeigt werden soll.
PROC_NAME STRING
Der Prozedurname.
SEVERITY STRING
Der Schweregrad des Fehlers.
Rückgabewerte¶
Gibt einen Zeichenfolgenwert mit den neuen Fehlermeldungsinformationen zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
SEQUENCE_OBJECT_ID_UDF (VARCHAR)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) überprüft, ob eine Sequenz mit einem bestimmten Namen schon einmal erstellt worden ist.
Parameter¶
NAME VARCHAR
Der Name der Sequenz, die überprüft werden soll.
Rückgabewerte¶
Gibt einen booleschen Ausdruck zurück, der vom Vorhandensein der Sequenz abhängt.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
CAST_TIMESTAMP_TZ_TO_NUMERIC_UDF (TIMESTAMP_TZ)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wird verwendet, um timestamp_tz in numerisch umzuwandeln. Sie konvertiert die aktuelle Zeitzone in UTC, da der numerische Wert die timestamp-Informationen nicht speichern kann.
Parameter¶
INPUT TIMESTAMP_TZ
Der timestamp-Eingabe, die umgewandelt werden soll.
Rückgabewerte¶
Gibt eine numerische Zahl mit einem Dezimalpunkt zurück. Der ganzzahlige Teil steht für die Anzahl der Tage ab 1900-01-01 und der dezimale Teil für den Prozentsatz der Millisekunden in 24 Stunden.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
RAISERROR_UDF (VARCHAR, DOUBLE, DOUBLE, ARRAY)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) löst eine Ausnahme mit einer bestimmten Meldung aus.
Parameter¶
MSG_TEXT VARCHAR
Der Meldungstext der Fehlermeldung.
SEVERITY DOUBLE
Die Schweregradnummer für den Fehler.
STATE DOUBLE
Die Statusnummer für die Fehlermeldung.
PARAMS ARRAY
Die zusätzlichen Informationen der Fehlermeldung.
Rückgabewerte¶
Gibt ein varchar mit einer Fehlermeldung zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
PARSENAME_UDF¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) ruft den PART_NUMBER-Index eines durch '.' getrennten string ab.
Parameter¶
STR VARCHAR
Der Objektname als string.
PART_NUMBER INT
Der zu überprüfende Teil des Objektnamens.
Rückgabewerte¶
Gibt den angegebenen Teil eines Objektnamens zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
ERROR_STATE_UDF¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) ruft den Fehlerstatus unabhängig davon ab, wie oft sie ausgeführt wird oder wo sie im Rahmen des CATCH-Blocks ausgeführt wird.
Parameter¶
Keine Eingabeparameter.
Rückgabewerte¶
Gibt den string mit dem Fehlerstatus zurück, unabhängig davon, wie oft sie ausgeführt wird oder wo sie im Rahmen des CATCH-Blocks ausgeführt wird.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
CAST_TIME_TO_TIMESTAMP_TZ_UDF (TIME)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) wandelt time in timestamp_tz um.
Parameter¶
INPUT TIME
Die Eingabezeit, die in timestamp_tz umgewandelt werden soll.
Rückgabewerte¶
Gibt einen timestamp_tz-Wert mit dem Datum 1900-01-01 und der gleichen Uhrzeit wie die Eingabe zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
SUM_TIMESTAMP_TZ_UDF (TIMESTAMP_TZ, TIMESTAMP_TZ)¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) konvertiert beide Eingaben in die System- oder Sitzungszeitzone und summiert die Daten, wobei 1900-01-01 00:00:00.000 als Nullwert verwendet wird. Wenn ein Wert die Zeitzone nicht enthält, wird die Zeitzone der aktuellen Sitzung verwendet.
Parameter¶
FIRST_DATE TIMESTAMP_TZ
Das erste Datum, zu dem summiert werden soll.
SECOND_DATE TIMESTAMP_TZ
Das zweite Datum, zu dem summiert werden soll.
Rückgabewerte¶
Gibt die Summe zwischen den beiden Eingabedatumswerten zurück.
Verwendungsbeispiel¶
Eingabe:
Ausgabe:
GET_WEEK_START_UDF¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) ruft die Konfiguration WEEK_START ab, die der Funktion @@FIRSTDATE entspricht. Um plattformübergreifend Konsistenz zu wahren, stellen Sie sicher, dass der Parameter WEEK_START mit der DATEFIRST-Einstellung in Transact-SQL übereinstimmt.
Rückgabewerte¶
Gibt eine Zahl zurück, die den ersten Tag der Woche darstellt.
Verwendungsbeispiel¶
Der Snowflake-Standardwert für WEEK_START ist 0. Diese Funktion gibt jedoch 7 zurück, um dem DATEFIRST-Standardwert in Transact-SQL zu entsprechen, und sorgt so für konsistentes Verhalten.
Eingabe:
Ausgabe:
DATE_PART_WEEK_DAY_UDF¶
Definition¶
Diese benutzerdefinierte Funktion (UDF) erhält den Wochentag als Zahl (1–7). Um plattformübergreifende Konsistenz sicherzustellen, setzen Sie bitte den Parameter WEEK_START auf denselben Wert wie die DATEFIRST-Einstellung in Transact-SQL.
Parameter¶
INPUT DATE
Datum, um den Tag zu erhalten
Rückgabewerte¶
Gibt eine Zahl zurück, die den Wochentag darstellt, wobei Montag=1, Dienstag=2, … Sonntag=7 ist.
Verwendungsbeispiel¶
Der WEEK_START-Parameter ist 0, was dazu führt, dass DATE_PART_WEEK_DAY_UDF einen Wert von 1 zurückgibt.
Eingabe:
Ausgabe:
SCOPE_IDENTITY()¶
Definition¶
The SCOPE_IDENTITY() function in SQL Server returns the last identity value inserted into an identity column in the same scope. SnowConvert AI transforms this function into a time-travel query using AT(STATEMENT =>) to retrieve the identity value from the most recent INSERT statement.
Transformation Pattern¶
SQL Server:
Snowflake:
Requirements¶
Only works within procedural contexts (stored procedures, functions) that are transformed to SnowScript
Requires an identity column defined on the target table using
IDENTITY(seed, increment)The preceding INSERT statement must target a table with a resolvable identity column in the symbol table
Usage Example¶
Input (SQL Server):¶
Output (Snowflake):¶
Known Limitations¶
Nested Scope Edge Case¶
When SCOPE_IDENTITY() is used inside a nested BEGIN...END block while the INSERT statement is in the outer procedure body, the transformation may not detect the INSERT correctly:
In this case, SnowConvert AI may generate SSC-EWI-TS0095 indicating that no preceding INSERT was found, even though one exists at a different nesting level. This is a known limitation tracked for future enhancement.
Workaround: Refactor the code to keep SCOPE_IDENTITY() in the same block as the INSERT statement.
Batch Context¶
SCOPE_IDENTITY() is not transformed in batch contexts (scripts outside of procedures/functions). In such cases, the original function call is preserved with SSC-EWI-0073.
Additional Notes¶
The
AT(STATEMENT =>)time-travel clause may return incorrect results under high-concurrency scenarios where multiple sessions insert into the same table simultaneouslyFor more information about time-travel queries, see the Snowflake documentation