У меня есть данные в таблице Hive, как показано ниже для номера мобильного телефона и номера версии приложения, и я хотел получить максимальный номер версии приложения, установленный на этом мобильном телефоне:
выберите * из app_ver_test;
1112223333 1.1.1.10
1112223333 1.1.1.8
1112224444 1.1.1.15
1112224444 2.1.1.0
1112225555 5.1.1.8
1112225555 5.1.1.20
1112226666 5.1.1.20
когда вы выбираете simple max(App_ver)
с помощью group by mobile number
, тогда я получаю неправильные результаты для 1112223333, так как он показывает 1.1.1.8 вместо 1.1.1.10.
Пожалуйста, помогите мне здесь.
Спасибо
Sateesh
select ctn,max(CONCAT_WS('0',(split(app_ver, '\\.')))) from localytics.app_ver_test group by ctn;
select ctn,max(cast(CONCAT_WS('',(split(app_ver, '\\.'))) as Int) from localytics.app_ver_test group by ctn;
select ctn,(cast(CONCAT_WS('',(split(app_ver, '\\.'))) as float)) from localytics.app_ver_test order by ctn