hi!
habe gerade weiter unten in einem SQL-Befehl die Funktion
NVL() gesehen und möchte nun wissen, was die macht.
Ich bin sehr fit in SQL, aber NVL() habe ich bisher noch
nirgends gelesen - geschweigen dann verwendet
Ist das
SQL-Standard?
fit und kein nvl?? 
nvl ist zum ausscheiden von null-values von variablen, rückgabewerten etc. vorgesehen:
declare
…
var_test number;
…
begin
var_test := fun_blabla(xxx,yyy);
if (nvl(var_test,0) > 0) …
…
end;
wobei auch hier ein „var_test := nvl(fun_blabla,xxx,yyy),0);“ verwendet werden kann
warum? ein vergleich mit NULL ergibt immer NULL (auch bei boolean-vergleichen - siehe das if-stmt.)
grüße,
tomh
ps: das decode stmt. ist vergleichbar mit dem case; wenn du statt dem nvl ein decode machst, müßte es so aussehen:
var_test := decode(var_test,null,0,var_test);
var_test := nvl(var_test,0);
pps: du kannst anstatt einer number natürlich irgendeinen typ angeben …