Jeden kolega potřeboval pomocí SQL spočítat součin hodnot v daném slopečku tabulky. A jiný můj kolega mu poradil takou vtipnou věc. No není to pěkné posuďte sami:
To, co tam mas, asi nebude pro Oracle, co? Pro oracle by to melo byt napr. SELECT POWER(10, SUM(LOG(10, n))) FROM table_name...
A zkousel jsi zkoumat, jak je to s presnosti takovehoto vypoctu? Co zaokrouhlovaci chyby? Mozna ze priblizne to je, ale presne to rozhodne neni...
Dej si do tabulky napr. 0.2, 10, 0.01 a vysledkem vypoctu je .0199999999999999999999999999999999999999 (a to jsou to jen tri cisla!). Zahrn takto nepresna cisla do nejakeho slozitejsiho vypoctu (treba je vynasob, odmocni) a vysledek ustreli uplne nekam jinam.
Pro oracle by tam stačilo dát ln, ale o to tady moc nešlo, šlo v podstatě jenom o takovou perličku. Já sám sem to ani nezkoušel jenom se mi na tom líbila ta matemetika.
2 Comments:
To, co tam mas, asi nebude pro Oracle, co? Pro oracle by to melo byt napr. SELECT POWER(10, SUM(LOG(10, n))) FROM table_name...
A zkousel jsi zkoumat, jak je to s presnosti takovehoto vypoctu? Co zaokrouhlovaci chyby? Mozna ze priblizne to je, ale presne to rozhodne neni...
Dej si do tabulky napr. 0.2, 10, 0.01 a vysledkem vypoctu je .0199999999999999999999999999999999999999 (a to jsou to jen tri cisla!). Zahrn takto nepresna cisla do nejakeho slozitejsiho vypoctu (treba je vynasob, odmocni) a vysledek ustreli uplne nekam jinam.
By
Anonymní, at pondělí, června 12, 2006
Pro oracle by tam stačilo dát ln, ale o to tady moc nešlo, šlo v podstatě jenom o takovou perličku. Já sám sem to ani nezkoušel jenom se mi na tom líbila ta matemetika.
By
3rojka, at pondělí, června 12, 2006
Okomentovat
<< Home