Hilfsfunktionen
ABS gibt den absoluten Wert einer Zahl zurück.
Mathematisch
ABS
ABS gibt den absoluten Wert einer Zahl zurück.
SELECT ABS(numeric_value)
SELECT ABS(-243.5)
- 243.5
CEILING
CEILING gibt die kleinste ganze Zahl zurück, die größer oder gleich einer Zahl ist.
SELECT CEILING(numeric_value)
SELECT CEILING(243.5)
- 244
FLOOR
FLOOR gibt die größte ganze Zahl zurück, die kleiner oder gleich einer Zahl ist.
SELECT FLOOR(numeric_value)
SELECT FLOOR(243.5)
- 243
TRUNCATE
TRUNCATE gibt eine Zahl zurück, die an der angegebenen Anzahl von Dezimalstellen abgeschnitten wird. Der Wert wird dabei nicht gerundet.
SELECT TRUNCATE(numeric_value,decimal_length)
SELECT TRUNCATE(-243.52745,2)
- 243.52
Datum
- DATE repräsentiert ein DATETIME. Es gibt keinen separaten DATE- vs. DATETIME-Datentyp.
- DATE-Werte werden hier zwischen # (Raute)-Zeichen dargestellt. Dies unterscheidet sie von einer Zeichenkette in ’ (einfachen Anführungszeichen). Im Allgemeinen verwenden Sie beim Eingeben eines DATE im AQL-Editor einfache Anführungszeichen.
- DATE-Zeichenketten sollten im Format YYYY-MM-DD HH:MM:SS eingegeben werden
- Das eingegebene DATE wird als GMT interpretiert und dann in der lokalen Zeitzone angezeigt.
SELECT DATE('2024-12-31')auf einem Computer in der Eastern Time Zone gibt 12/30/2024, 7PM zurück
DATE
DATE gibt einen DATE-Wert aus einer STRING-Zeichenkette zurück.
SELECT DATE(string_date)
SELECT DATE('2024-12-31')
- #12/31/2024 12:00:00#
SELECT DATE('12/31/2024 11:59:00')
- #12/31/2024 11:59:00#
DAY
DAY gibt den Tagesteil eines Datums zurück.
SELECT DAY(date_value)
SELECT DAY(#12/31/2024#)
- 31
DAYOFWEEK
DAYOFWEEK gibt den Wochentag für das angegebene Datum zurück. Der zurückgegebene Wert ist 0 bis 6, Montag bis Sonntag.
SELECT DAYOFWEEK(date_value)
SELECT DAYOFWEEK(#12/31/2024#)
- 1 (Dienstag)
DAYOFYEAR
DAYOFYEAR gibt die Julianische Nummer oder die vergangenen Tage seit Jahresbeginn zurück.
SELECT DAYOFYEAR(date_value)
SELECT DAYOFYEAR(#12/31/2024#)
- 366
HOUR
HOUR gibt den Stundenwert eines DATE zurück, 0=12AM bis 23=11PM.
SELECT HOUR(date_value)
SELECT HOUR(#12/31/2024 11:59:00#)
- 0 (Datumsangaben haben eine Standardzeit von 12:00:00 AM)
ISODATE
ISODATE gibt das DATE im ISO-Format YYYY-MM-DDTHH:MM:SSZ zurück.
SELECT ISODATE(date_value)
SELECT ISODATE(#12/31/2024 11:59PM#)
- 2024-12-31T11:59:00Z
MINUTE
MINUTE gibt den Minutenwert eines DATE zurück.
SELECT MINUTE(date_value)
SELECT MINUTE(#12/31/2024 11:59PM#)
- 59
SELECT MINUTE(#12/31/2024#)
- 0 (Datumsangaben haben eine Standardzeit von 12:00:00 AM)
MONTH
MONTH gibt den Monatsteil eines DATE zurück.
SELECT MONTH(date_value)
SELECT MONTH(#12/31/2024 11:58:34#)
- 12
NOW
NOW gibt das aktuelle DATE zurück.
SELECT NOW()
SELECT NOW()
TODAY
TODAY gibt das aktuelle DATE zurück (mit einer “0”-Zeit von 12:00:00 AM).
SELECT TODAY()
SELECT TODAY()
SECOND
SECOND gibt den Sekundenteil eines DATE zurück.
SELECT SECOND(date_value)
SELECT SECOND(#12/31/2024 11:59:23PM#)
- 23
WEEK
WEEK gibt die Kalenderwoche des Jahres für ein DATE zurück.
SELECT WEEK(date_value)
SELECT WEEK(#12/31/2024#)
- 53
YEAR
YEAR gibt den Jahresteil eines DATE zurück.
SELECT YEAR(date_value)
SELECT YEAR(#12/31/2024#)
- 2024
Typkonvertierung
CAST
CAST gibt ein DATE, eine NUMBER oder einen STRING aus einem DATE-, NUMBER- oder STRING-Wert zurück. Viele CAST-Operationen werden auch dynamisch durchgeführt.
SELECT CAST(value AS type)
SELECT CAST (12345 AS STRING)
- ‘12345’ (Anführungszeichen nur zur Verdeutlichung als STRING gezeigt)
SELECT CAST ('4567.89' AS NUMBER)
- 4567.89
SELECT CAST ('2024-12-31 11:45:58' AS DATE)
- #12/31/2024 11:45:58# (Diese CAST-Struktur repliziert die Funktionalität von DATE)
LOCALDATE
LOCALDATE gibt einen STRING aus einem DATE-Wert im Format YYYY-MM-DD HH:MM:SSTZ zurück.
SELECT LOCALDATE(date_value)
SELECT LOCALDATE(#12/31/2024 23:59:00#)
- 2024-12-31 23:59:00-04
LOCALNUMBER
LOCALNUMBER gibt einen STRING aus einem NUMBER-Wert im lokalen Standardformat zurück.
SELECT LOCALNUMBER(numeric_value)
SELECT LOCALNUMBER(-1243.5)
- -1,243.5000
Nur US-Zahlenformat
Zeichenketten
COALESCE
COALESCE gibt den ersten nicht-NULL-Wert zurück, der übergeben wurde.
SELECT COALESCE(value1,value2[,valueN])
set A=NULL
set B=NULL
set C=23
SELECT COALESCE(A,B,C)
- 23
CONCAT
CONCAT gibt die Verkettung von zwei oder mehr STRING-Zeichenketten zurück.
SELECT CONCAT(string1,string2[,string3])
SELECT CONCAT('Smith',', ','John')
- Smith, John
LEFT
LEFT gibt die X linkesten Zeichen zurück.
SELECT LEFT(string_value,numeric_value)
SELECT LEFT('ABCDEFG',3)
- ABC
RIGHT
RIGHT gibt die X rechtesten Zeichen zurück.
SELECT RIGHT(string_value,numeric_value)
SELECT RIGHT('ABCDEFG',3)
- EFG
LENGTH
LENGTH gibt die Anzahl der Zeichen eines STRING zurück.
SELECT LENGTH(string_value)
SELECT LENGTH('ABCDEFG')
- 7
INSTR / LOCATE
INSTR und LOCATE geben die Position eines STRING innerhalb eines anderen STRING zurück.
SELECT INSTR(bigstring_value,findstring_value)
SELECT LOCATE(findstring_value,bigstring_value)
SELECT INSTR('ABCDEFG','C')
- 3
SELECT LOCATE('C','ABCDEFG')
- 3
ISNULL
ISNULL gibt den zweiten Wert zurück, wenn der erste NULL ist.
SELECT ISNULL(value1,value2)
set A=NULL
SELECT ISNULL(A,'ABCDEFG')
- ABCDEFG
LPAD
LPAD füllt eine Zeichenkette links auf eine feste Länge auf.
SELECT LPAD(string_value,numeric_value,pad_string)
SELECT LPAD('ABCDEFG',10,'*')
- ***ABCDEFG
RPAD
RPAD füllt eine Zeichenkette rechts auf eine feste Länge auf.
SELECT RPAD(string_value,numeric_value,pad_string)
SELECT RPAD('ABCDEFG',10,'*')
- ABCDEFG***
LTRIM
LTRIM entfernt führende Leerzeichen aus einem STRING.
SELECT LTRIM(string_value)
SELECT LTRIM(' ABCDEFG')
- ABCDEFG
RTRIM
RTRIM entfernt nachfolgende Leerzeichen aus einem STRING.
SELECT RTRIM(string_value)
SELECT RTRIM('ABCDEFG ')
- ABCDEFG
SUBSTR
SUBSTR gibt einen Teil eines STRING zurück, definiert durch die Startposition und Länge.
SELECT SUBSTR(string_value,start_position,length)
SELECT SUBSTR('ABCDEFG',2,5)
- BCDEF
TRIM
TRIM entfernt führende und nachfolgende Leerzeichen aus einem STRING.
SELECT TRIM(string_value)
SELECT TRIM(' ABCDEFG ')
- ABCDEFG
UPPER
UPPER gibt einen gegebenen STRING in Großbuchstaben zurück.
SELECT UPPER(string_value)
SELECT UPPER('AbcdEfg')
- ABCDEFG
LOWER
LOWER gibt einen gegebenen STRING in Kleinbuchstaben zurück.
SELECT LOWER(string_value)
SELECT LOWER('AbcdEfg')
- abcdefg
Aparavi-spezifisch
COMPONENTS
COMPONENTS gibt den übergeordneten Ordnerpfad eines Objekts bis zu X Ebenen tief aus einer Verzeichnispfad-Zeichenkette zurück.
SELECT COMPONENTS(filepath_value,depth)
SELECT COMPONENTS('c:\path\to\a\deep\deep\file.txt',6)
- c:\path\to\a\deep