Конвертация Teradata в MySQL - квалификация и ранг - PullRequest
0 голосов
/ 26 апреля 2018

У меня есть код teradata, который показан ниже:

select *
from date_dim a
left join 
(select incident_number,incident_type,submit_date from itamr qualify RANK() OVER (PARTITION BY incident_number ORDER BY last_modified_date DESC) = 1)b
on a.Clndr_Dt = b.submit_date
and b.incident_type = 'Request';

Мне нужно преобразовать квалифицированный ранг и раздел в mysql. Я пробовал группировать вместо раздела. Может ли кто-нибудь помочь мне с тем, как конвертировать квалификацию и звание в MySQL?

1 Ответ

0 голосов
/ 02 мая 2018

QUALIFY - это ключевое слово teradata.Функция Howover RANK будет работать с любой реляционной БД.Вы можете заменить оператор QUALIFY подзапросом, как показано ниже:

 select *
from date_dim a
left join 
(
select * from 
(select incident_number,incident_type,submit_date ,
RANK() OVER (PARTITION BY incident_number ORDER BY last_modified_date DESC) rn
from itamr ) sub where rn = 1 ) b
on a.Clndr_Dt = b.submit_date
and b.incident_type = 'Request';
...