#sql #hive #distinct
#sql #улей #distinct
Вопрос:
Я хочу сохранить все 10 переменных из старой таблицы, но выбрать только отдельные записи на основе 3 переменных (var1 var2 var3), как мне сохранить все 10 переменных в новой таблице в HIVE?
(создайте новую таблицу, выбрав РАЗЛИЧНЫЕ var1, var2, var3 из старой);
Комментарии:
1. . . SQL использует термин «столбцы» для описания атрибутов в таблице, а не «поля».
Ответ №1:
Вы можете использовать row_number()
— если вас не волнует, какие строки выбраны:
select . . . -- whatever columns you want
from (select t.*,
row_number() over (partition by var1, var2, var3 order by var1) as seqnum
from t
) t
where seqnum = 1
Комментарии:
1. Я должен был сказать, что у меня есть 100 столбцов / переменных, которые я не хочу перечислять, но если я выбираю *, это, похоже, не работает
2. @FunT . . . В вашем вопросе явно указывается уникальность для трех столбцов из 10. И эта та же идея работает. Вам нужно перечислить столбцы. Возможно, электронная таблица может помочь.
3. Спасибо, Гордон, приношу свои извинения, я новичок на этом форуме. Я опубликовал пример, надеюсь, это лучше объясняет, что мне нужно.