Учитывая этот запрос:
SELECT
LENGTH(app) AS app_length,
ROW_NUMBER()
OVER (
PARTITION BY
vid, basevid
ORDER BY
vid, basevid, LENGTH(app)
) AS j,
vid, basevid, app
FROM DATA4 WHERE hol = '40008'
, который возвращает эти данные:
app_length,j,vid,basevid,app
2,1,6260,3174,"AT"
2,2,6260,3174,"AT"
9,3,6260,3174,"AT; TH125"
9,4,6260,3174,"AT; TH125"
18,5,6260,3174,"AT; TH125 gasoline"
18,6,6260,3174,"AT; TH125 gasoline"
2,1,6261,3175,"AT"
2,2,6261,3175,"AT"
9,3,6261,3175,"AT; TH125"
9,4,6261,3175,"AT; TH125"
18,5,6261,3175,"AT; TH125 gasoline"
18,6,6261,3175,"AT; TH125 gasoline"
2,1,6260,3174,"AT"
2,2,6260,3174,"AT"
9,3,6260,3174,"AT; TH125"
9,4,6260,3174,"AT; TH125"
18,5,6260,3174,"AT; TH125 gasoline"
18,6,6260,3174,"AT; TH125 gasoline"
2,1,6262,3176,"AT"
2,2,6262,3176,"AT"
9,3,6262,3176,"AT; TH125"
9,4,6262,3176,"AT; TH125"
18,5,6262,3176,"AT; TH125 gasoline"
18,6,6262,3176,"AT; TH125 gasoline"
2,1,6262,3176,"AT"
2,2,6262,3176,"AT"
9,3,6262,3176,"AT; TH125"
9,4,6262,3176,"AT; TH125"
18,5,6262,3176,"AT; TH125 gasoline"
18,6,6262,3176,"AT; TH125 gasoline"
2,1,6262,3176,"AT"
2,2,6262,3176,"AT"
9,3,6262,3176,"AT; TH125"
9,4,6262,3176,"AT; TH125"
18,5,6262,3176,"AT; TH125 gasoline"
18,6,6262,3176,"AT; TH125 gasoline"
2,1,10182,4599,"AT"
9,2,10182,4599,"AT; TH125"
18,3,10182,4599,"AT; TH125 gasoline"
2,1,10328,4651,"AT"
9,2,10328,4651,"AT; TH125"
18,3,10328,4651,"AT; TH125 gasoline"
2,1,9830,4453,"AT"
2,2,9830,4453,"AT"
9,3,9830,4453,"AT; TH125"
9,4,9830,4453,"AT; TH125"
18,5,9830,4453,"AT; TH125 gasoline"
18,6,9830,4453,"AT; TH125 gasoline"
2,1,9830,4453,"AT"
2,2,9830,4453,"AT"
9,3,9830,4453,"AT; TH125"
9,4,9830,4453,"AT; TH125"
18,5,9830,4453,"AT; TH125 gasoline"
18,6,9830,4453,"AT; TH125 gasoline"
2,1,4650,2560,"AT"
2,2,4650,2560,"AT"
9,3,4650,2560,"AT; TH125"
9,4,4650,2560,"AT; TH125"
18,5,4650,2560,"AT; TH125 gasoline"
18,6,4650,2560,"AT; TH125 gasoline"
Как бы я вернул запись с самой длинной строкой приложения или самой длинной app_length по vid и basevid?
Мне нужны следующие результаты:
app_length,j,vid,basevid,app
18,6,6261,3175,"AT; TH125 gasoline"
18,6,6260,3174,"AT; TH125 gasoline"
18,6,6262,3176,"AT; TH125 gasoline"
18,3,10182,4599,"AT; TH125 gasoline"
18,3,10328,4651,"AT; TH125 gasoline"
18,6,9830,4453,"AT; TH125 gasoline"
18,6,4650,2560,"AT; TH125 gasoline"
В таблице 40 миллионов записей, поэтому это тоже должно быть быстро.