SnowConvert AI – Redshift – Ausdrücke¶
Ausdruckslisten¶
Beschreibung¶
Eine Ausdrucksliste ist eine Kombination von Ausdrücken und kann in Mitgliedschafts- und Vergleichsbedingungen (WHERE-Klauseln) und in GROUP BY-Klauseln erscheinen. (Redshift SQL-Referenz: Ausdruckslisten).
Hinweis
Diese Syntax wird in Snowflake vollständig unterstützt.
Grammatikalische Syntax¶
Beispielhafte Quellcode-Muster¶
Einrichtungsdaten¶
Redshift¶
IN-Klausel.¶
Eingabecode:¶
Redshift¶
Result¶
ID |
NAME |
QUANTITY |
FRUIT |
PRICE |
|---|---|---|---|---|
1 |
Alice |
1 |
apfel |
100 |
2 |
Bob |
5 |
banana |
200 |
3 |
Charlie |
10 |
cherry |
300 |
Ausgabecode:¶
Snowflake¶
Result¶
ID |
NAME |
QUANTITY |
FRUIT |
PRICE |
|---|---|---|---|---|
1 |
Alice |
1 |
apfel |
100 |
2 |
Bob |
5 |
banana |
200 |
3 |
Charlie |
10 |
cherry |
300 |
Vergleiche¶
Eingabecode:¶
Redshift¶
Result¶
ID |
NAME |
QUANTITY |
FRUIT |
PRICE |
|---|---|---|---|---|
1 |
Alice |
1 |
apfel |
100 |
Ausgabecode:¶
Snowflake¶
Result¶
ID |
NAME |
QUANTITY |
FRUIT |
PRICE |
|---|---|---|---|---|
1 |
Alice |
1 |
apfel |
100 |
Bemerkung
Ausdruckslistenvergleiche mit den folgenden Operatoren können sich in Snowflake anders verhalten. (<, <= , >, >=). Diese Operatoren werden in logische AND-Operationen umgewandelt, um eine vollständige Äquivalenz in Snowflake zu erreichen.
Eingabecode:¶
Redshift¶
Result¶
R1 |
R2 |
R3 |
R4 |
R5 |
|---|---|---|---|---|
FALSE |
FALSE |
NULL |
NULL |
FALSE |
Ausgabecode:¶
Snowflake¶
Result¶
R1 |
R2 |
R3 |
R4 |
R5 |
|---|---|---|---|---|
FALSE |
FALSE |
NULL |
NULL |
FALSE |
Verschachtelte Tupel¶
Eingabecode:¶
Redshift¶
Result¶
ID |
NAME |
QUANTITY |
FRUIT |
PRICE |
|---|---|---|---|---|
1 |
Alice |
1 |
apfel |
100 |
2 |
Bob |
5 |
banana |
200 |
3 |
Charlie |
10 |
cherry |
300 |
Ausgabecode¶
Snowflake¶
Result¶
ID |
NAME |
QUANTITY |
FRUIT |
PRICE |
|---|---|---|---|---|
1 |
Alice |
1 |
apfel |
100 |
2 |
Bob |
5 |
banana |
200 |
3 |
Charlie |
10 |
cherry |
300 |
CASE-Anweisung¶
Eingabecode:¶
Redshift¶
Result¶
RESULT |
|---|
Gefunden |
Gefunden |
Gefunden |
Nicht gefunden |
Nicht gefunden |
Nicht gefunden |
Ausgabecode¶
Snowflake¶
Result¶
RESULT |
|---|
Gefunden |
Gefunden |
Gefunden |
Nicht gefunden |
Nicht gefunden |
Nicht gefunden |
Mehrere Ausdrücke¶
Eingabecode:¶
Redshift¶
Result¶
ID |
NAME |
QUANTITY |
FRUIT |
PRICE |
|---|---|---|---|---|
1 |
Alice |
1 |
apfel |
100 |
2 |
Bob |
5 |
banana |
200 |
3 |
Charlie |
10 |
cherry |
300 |
Ausgabecode¶
Snowflake¶
Result¶
ID |
NAME |
QUANTITY |
FRUIT |
PRICE |
|---|---|---|---|---|
1 |
Alice |
1 |
apfel |
100 |
2 |
Bob |
5 |
banana |
200 |
3 |
Charlie |
10 |
cherry |
300 |
Joins¶
Eingabecode:¶
Redshift¶
Result¶
QUANTITY |
FRUIT |
QUANTITY |
FRUIT |
|---|---|---|---|
ein/e |
apfel |
ein/e |
apfel |
Ausgabecode¶
Snowflake¶
Result¶
QUANTITY |
FRUIT |
QUANTITY |
FRUIT |
|---|---|---|---|
ein/e |
apfel |
ein/e |
apfel |
Bekannte Probleme ¶
Es wurden keine Probleme gefunden.
Zusammengesetzte Ausdrücke¶
Beschreibung ¶
Ein zusammengesetzter Ausdruck ist eine Reihe von einfachen Ausdrücken, die durch arithmetische Operatoren verknüpft sind. Ein einfacher Ausdruck, der in einem zusammengesetzten Ausdruck verwendet wird, muss einen numerischen Wert zurückgeben.
Grammatikalische Syntax ¶
Umrechnungstabelle¶
| Redshift | Snowflake | Comments |
|---|---|---|
|| (Concatenation) | || | Fully supported by Snowflake |
Beispielhafte Quellcode-Muster¶
Eingabecode:¶
Redshift¶
Ergebnisse¶
concat_string_number |
|---|
Hallo hat die Nummer 42 |
<NULL> |
Redshift hat die Nummer -7 |
concat_string_date |
|---|
Hallo am 2023-12-01 |
<NULL> |
<NULL> |
concat_with_null_handling |
|---|
Hallo mit der Nummer 42 |
Unbekannt mit Nummer 0 |
Redshift mit Nummer -7 |
Ausgabecode:
Snowflake¶
Ergebnisse¶
concat_string_number |
|---|
Hallo hat die Nummer 42 |
<NULL> |
Redshift hat die Nummer -7 |
concat_string_date |
|---|
Hallo am 2023-12-01 |
<NULL> |
<NULL> |
concat_with_null_handling |
|---|
Hallo mit der Nummer 42 |
Unbekannt mit Nummer 0 |
Redshift mit Nummer -7 |
Bekannte Probleme¶
Es wurden keine Probleme gefunden.
Zugehörige EWIs¶
Es gibt keine bekannten Probleme.
Arithmetische Operatoren¶
Operatoren
Übersetzung für arithmetische Operatoren
Umrechnungstabelle¶
| Redshift | Snowflake | Comments |
|---|---|---|
| +/- (positive and negative sign/operator) | +/- | Fully supported by Snowflake |
| ^ (exponentiation) | POWER | Fully supported by Snowflake |
| * (multiplication) | * | Fully supported by Snowflake |
| / (division) | / | Redshift division between integers always returns integer value, FLOOR function is added to emulate this behavior. |
| % (modulo) | % | Fully supported by Snowflake |
| + (addition) | + and || | Fully supported by Snowflake. When string are added, it is transformed to a concat. |
| - (subtraction) | - | Fully supported by Snowflake |
| @ (absolute value) | ABS | Fully supported by Snowflake |
| |/ (square root) | SQRT | Fully supported by Snowflake |
| ||/ (cube root) | CBRT | Fully supported by Snowflake |
Beispielhafte Quellcode-Muster¶
Addition, Subtraktion, Positiv & Negativ¶
Eingabecode:
Eingabecode:¶
Redshift¶
Ergebnisse¶
| positive_value | negative_value | add_sub_result | next_day | one_hour_before | string_sum | int_string_sum | string_int_sum |
|---|---|---|---|---|---|---|---|
| 100.50 | -100.50 | 97.50 | 2024-12-02 10:30:00.000000 | 2024-12-01 09:30:00.000000 | Basic testType A | 105.5 | 105.5 |
| 250.75 | -250.75 | 243.75 | 2024-12-03 15:45:00.000000 | 2024-12-02 14:45:00.000000 | Complex operationsType B | 255.75 | 255.75 |
| -50.25 | 50.25 | -53.25 | 2024-12-04 20:00:00.000000 | 2024-12-03 19:00:00.000000 | Negative base valueType C | -45.25 | -45.25 |
| 0.00 | 0.00 | 8.00 | 2024-12-05 09:15:00.000000 | 2024-12-04 08:15:00.000000 | Zero base valueType D | 5 | 5 |
Ausgabecode:
Snowflake¶
Ergebnisse¶
| positive_value | negative_value | add_sub_result | next_day | one_hour_before | string_sum | int_string_sum | string_int_sum |
|---|---|---|---|---|---|---|---|
| 100.5 | -100.5 | 97.5 | 2024-12-02 10:30:00 | 2024-12-01 09:30:00 | Basic testType A | 105.5 | 105.5 |
| 250.75 | -250.75 | 243.75 | 2024-12-03 15:45:00 | 2024-12-02 14:45:00 | Complex operationsType B | 255.75 | 255.75 |
| -50.25 | 50.25 | -53.25 | 2024-12-04 20:00:00 | 2024-12-03 19:00:00 | Negative base valueType C | -45.25 | -45.25 |
| 0 | 0 | 8 | 2024-12-05 09:15:00 | 2024-12-04 08:15:00 | Zero base valueType D | 5 | 5 |
Potenzierung, Multiplikation, Division & Modulo¶
Eingabecode:¶
Redshift¶
Ergebnisse¶
| raised_to_exponent | multiplied_value | divided_value | int_division | modulo_result | add_sub_result | controlled_eval |
|---|---|---|---|---|---|---|
| 10100.25 | 201 | 20.1 | 20 | 1 | 97.5 | 104.5 |
| 15766047.296875 | 752.25 | 25.075 | 25 | 1 | 243.75 | 259.75 |
| 6375940.62890625 | -251.25 | -6.28125 | -6 | 0 | -53.25 | -30.25 |
| 0 | 0 | 0 | 0 | 1 | 8 | 10 |
Ausgabecode:¶
Snowflake¶
Ergebnisse¶
| raised_to_exponent | multiplied_value | divided_value | int_division | modulo_result | add_sub_result | controlled_eval |
|---|---|---|---|---|---|---|
| 10100.25 | 201 | 20.1 | 20 | 1 | 97.5 | 104.5 |
| 15766047.2969 | 752.25 | 25.075 | 25 | 1 | 243.75 | 259.75 |
| 6375940.6289 | -251.25 | -6.2812 | -7 | 0 | -53.25 | -30.25 |
| 0 | 0 | 0 | 0 | 1 | 8 | 10 |
Absoluter Wert, Quadratwurzel und Kubikwurzel¶
Eingabecode:¶
Redshift¶
Ergebnisse¶
Ausgabecode:¶
Snowflake¶
Ergebnisse¶
Bekannte Probleme¶
In Snowflake ist es möglich, die unären Operatoren
+und-mit Zeichenfolgenwerten zu verwenden, in Redshift ist dies jedoch nicht zulässig.
Zugehörige EWIs¶
Keine zugehörigen EWIs.
Bitweise Operatoren¶
Operatoren
Übersetzung für bitweise Operatoren
Umrechnungstabelle¶
| Redshift | Snowflake | Comments |
|---|---|---|
& (AND) | BITAND | Fully supported by Snowflake |
| (OR) | BITOR | Fully supported by Snowflake |
<< (Shift Left) | BITSHIFTLEFT | |
>> (Shift Right) | BITSHIFTRIGHT | |
# (XOR) | BITXOR | Fully supported by Snowflake |
~ (NOT) | BITNOT | Fully supported by Snowflake |
Beispielhafte Quellcode-Muster¶
Datenkonfiguration¶
Redshift¶
Abfrage¶
Snowflake¶
Abfrage¶
Bitweise Operatoren auf Ganzzahlwerte¶
Eingabecode:¶
Redshift¶
Ergebnisse¶
Ausgabecode:
Snowflake¶
Ergebnisse¶
Bitweise Operatoren auf binären Daten¶
Bei den Funktionen BITAND, BITOR und BITXOR wird der Parameter'LEFT' hinzugefügt, um eine Auffüllung einzufügen, falls die beiden Binärwerte unterschiedlich lang sind. Dies geschieht, um Fehler beim Vergleich der Werte in Snowflake zu vermeiden.
Redshift¶
Abfrage¶
Result¶
Snowflake¶
Abfrage¶
Result¶
Bekannte Probleme¶
Es wurden keine Probleme gefunden.
Zugehörige EWIs¶
[SSC-FDM-PG0010](../../general/technical-documentation/issues-and-troubleshooting/functional-difference/postgresqlFDM. md#ssc-fdm-pg0010): Die Ergebnisse können aufgrund des Verhaltens der bitweisen Funktion von Snowflake variieren.