У меня есть две функции ранга и одна работает как положено. Тем не менее, другой занимает один раздел перед другими разделами. Вот код:
if(count1>=3 and count2>=2 and count3>=2,
rank() over (partition by examdateID, sClass Order By orderColumn desc), count(StudentID) over (partition by examdateID, sClass)) as ClassRank ,
if(count1>=3 and count2>=2 and count3>=2,
rank() over (partition by examDateID, sClass, stream Order By orderColumn desc), count(StudentID) over (partition by examdateID, sClass, stream )) as StreamRank from...
У меня есть два потока, и я ожидаю, что classRank даст оценку всем студентам в этих потоках. Однако все в потоке 1 ранжируются перед потоком 2 ... 3 .. et c
, если условие (count1,2,3) не выполняется, я просто ожидаю, что общее количество студентов
Не могли бы вы указать мне правильное направление?
Я использую MariaDb 10.4.10
Edit :: Я понял, что проблема в том ... когда Я удаляю его, рейтинг в порядке Может быть, rank () нельзя поместить внутрь, если ... все еще нужны предложения