سؤال

أنا أكتب وظيفة للحصول على النتيجة الإجمالية في SQL

ما لدي هو؛

out of 20 points I got 12.4 points

لذلك إذا قمت بتحويل ذلك، لاتخاذ النسبة المئوية أكثر من 100٪ كيف أفعل ذلك؟

ثناكس، عدنان

هل كانت مفيدة؟

المحلول

يفترض أنك تعني "وظيفة" كما هو الحال في الإجراء المخزن، وسوف تبدو مثل هذا في أوراكل:

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;
/

النكهات المختلفة لقاعدة البيانات لها مواصفات مختلفة لكتابة الإجراءات المخزنة.

نصائح أخرى

قسم النقاط التي حصلت عليها المجموع، وضربها 100:

select [got] / [total] * 100
from MyTable

(12.4 / 20) سيعطي X 100 النسبة المئوية.

لذلك أعلن متغير النسبة المئوية في Func، استخدم ما ورد أعلاه والعودة إلى ذلك؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top