Ein kleiner Ausflug in die Welt der nicht ganz so hohen Mathematik: wie berechne ich die nächst höhere Zehnerpotenz zu einem gegebenen Wert mit Datenbankmitteln? Mir fiel dazu nichts Besseres ein als das Aufrunden des Ergebnisses der log-Funktion zum gegebenen Wert und die Verwendung dieses aufgerundeten Ergebnisses als Exponent zur Basis 10. Hier die Varianten für postgres und Oracle:
-- postgres
dbadmin=# select 10 ^ ceiling(log(4711)) round_up;
round_up
----------
10000
-- Oracle
SQL> select power(10, ceil(log(10, 4711))) round_up from dual;
ROUND_UP
----------
10000
Keine Kommentare:
Kommentar veröffentlichen