Frage
Ich bin eine Funktion zu schreiben Gesamtnote in SQL erhalten
Was ich habe, ist;
out of 20 points I got 12.4 points
Wenn ich also, dass Transformation Prozentsatz über 100% zu übernehmen, wie würde ich es tun?
Thanx, Adnan
Lösung
Vorausgesetzt, Sie „Funktion“, wie er in gespeicherte Prozedur bedeuten, es so in Oracle aussehen:
create or replace function pct
(p_score in number
, p_total in number)
return number
deterministic
is
begin
return p_score * (100/p_total);
end;
/
Verschiedene Aromen der Datenbank haben unterschiedliche Spezifikationen für gespeicherte Prozeduren zu schreiben.
Andere Tipps
Teilen Sie die Punkte, die Sie durch die Gesamt haben, und mit 100 multiplizieren:
select [got] / [total] * 100
from MyTable
(12.4 / 20) x 100 den Prozentsatz geben.
erklären also einen Prozentsatz Variable in Ihrer func, verwenden Sie die oben und die Rückkehr?
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow