Я создал скалярную функцию, которая должна преобразовывать знак учащегося в букву, я использовал CASE & Between для переключения значений следующим образом:
ALTER FUNCTION [GetLetterGrade]
(
@avg decimal ,
@isCommented bit
)
RETURNS Char(50)
AS
BEGIN
return case WHEN @isCommented = 0 THEN
CASE
when @avg between 97 And 100 THEN '01'
when @avg Between 93 And 97 THEN '02'
when @avg Between 90 And 93 THEN '03'
when @avg Between 87 And 90 THEN '04'
when @avg Between 83 And 87 THEN '05'
......
Функция переходит от одного случая к другому на 96,5 вместо 97 и на 92,5 вместо 93 и так далее, любая идея?
[]
Пожалуйста, помогите