У меня есть запрос на выборку, который выглядит следующим образом:
sel aa.*
, min(Case when BAL >0 then 1
when bb.CUST_DT < aa.APPL_DT then 2
else 3
end)
over (partition by app_id) as cus_Typ
from
tablea AS aa
left join tableb as bb
on aa.cust_num=bb.cust_num
group by 1,2,3
При запуске я вижу следующие ошибки.
- Ошибка, которую я получаю, если удалить «cus_Typ» (Группировать по столбцу 3) в предложении group by, равна
3504 Выбранные неагрегированные значения должны быть частью связанная группа
Если я добавлю cus_Typ (так как он есть в разделе разбивки / ранжирования), я получу следующую ошибку: -
Ошибка 5481 - Упорядоченные аналитические функции не разрешены в выражении group by
Сценарий ios, когда код работает нормально: -
Без раздела группа работает нормально. С разделом выдает ошибку ..
Без группировки по разделу работает нормально.
Мой вопрос: как мы можем сделать этот запрос работать, включая как группы по разделам? Какие столбцы нужно включить в группу?
Спасибо.