|
|
Övriga funktioner i Oracle
Kommando | | Exempel | | Beskrivning |
VSIZE | | VSIZE(col1) | | Visar hur många byte Oracle intert använder för att lagra ett värde. |
DECODE | | DECODE(gender, 'M','Man','F','Kvinna','Okänd') | | Fungerar som en if-else slinga. |
GREATEST | | GREATEST(12,14) | | Returnerar största värdet i en lista. |
LEAST | | LEAST(12,14) | | Returnerar minsta värdet i en lista. |
NVL | | NVL(Null, 'Är null') | | Om det första värdet ej är Null returneras det, annars returneras det andra värdet. |
UID | | UID | | Visar användarens id. |
USER | | USER | | Visar användarens namn. |
USERENV | | USERENV('ISDBA') | | Visar parametrar för användaren. |
|
VSIZE
Visar hur många byte Oracle intert använder för att lagra ett värde.
SQL> SELECT VSIZE('hej') FROM dual;
VSIZE('HEJ')
------------
3
|
DECODE
DECODE(värde,sök,ersätt,sök2,ersätt2,default) används då man vill ersätta ett värde med ett annat. Om inget av sökvärdena hittas kommer default att användas. Se exempel:
SQL> SELECT DECODE('X', 'M','Man','F','Kvinna','Okänd') as gend FROM dual;
GEND
-----
Okänd
|
GREATEST
Returnerar största värdet i en lista:
SQL> SELECT greatest(12,14) FROM dual;
GREATEST(12,14)
---------------
14
|
LEAST
Returnerar minsta värdet i en lista:
SQL> SELECT least(12,14) FROM dual;
LEAST(12,14)
------------
12
|
NVL
NVL(utr1, utr2) fungerar så att om utr1 ej är Null returneras utr1, annars returneras utr2.
SQL> SELECT NVL(Null,'Är null') a, NVL('Hej','Är ett') b FROM dual;
A B
------- ---
Är null Hej
|
UID
UID visar användarens id:
SQL> SELECT UID FROM dual;
UID
----------
63
|
USER
USER visar användarens namn:
SQL> SELECT user FROM dual;
USER
------------------------------
OLLE
|
USERENV
Med USERENV('ISDBA') kan man få reda på om användaren har loggat in som SYSDBA.
SQL> SELECT userenv('ISDBA') FROM dual;
USEREN
------
FALSE
|
För mig är så icke fallet.
|
| |
|