Вулик - це сховище даних, яке надає Apache. Вулик побудований поверх розподіленої файлової системи Hadoop (HDFS) для запису, читання, запитів та управління великими структурованими або напівструктурованими даними в розподілених системах зберігання даних, таких як HDFS. Кожен HiveQL буде перетворений на завдання MapReduce в бекенді. Hive забезпечує мову запитів Hive (HiveQL), що є звичайним SQL в RDBMS. Як і SQL, HiveQL також надає пункт ORDER BY, який може бути використаний із пропозицією SELECT. Функція ORDER BY використовується для сортування даних у порядку зростання або спадання за стовпцями, визначеними користувачем.
Синтаксис у порядку вулика За
Нижче наведено синтаксис у порядку вулика за:
Основний синтаксис:
SELECT, FROM ORDER BY ;
SELECT, FROM ORDER BY ;
ЗАМОВИТИ ЗАКЛАДУ разом з усіма іншими пунктами:
SELECT DISTINCT, , FROM WHERE GROUP BY HAVING ORDER BY LIMIT ;
SELECT DISTINCT, , FROM WHERE GROUP BY HAVING ORDER BY LIMIT ;
Ви також можете вказати ЗАМОВЛЕННЯ ДО 1 або ЗАМОВЛЕННЯ ДО 2, де 1 і 2 представляють номер стовпця замість того, щоб використовувати ЗАМОВЛЕННЯ БО. ORDER BY може бути використаний лише тоді, коли імена стовпців вказані у пункті SELECT, а не із пунктом SELECT *.
Як ми можемо використовувати ЗАМОВЛЕННЯ ЗА функцією у вулику?
Нижче пояснення показано, що як ми можемо використовувати порядок за функцією у вулику:
1. ЗАМОВЛЕННЯ За зростанням та убуванням
За замовчуванням порядок сортування буде висхідним, що показує найменше значення на початку та найбільше значення в кінці результату, навіть якщо ви не чітко вказали його.
Ви також можете вказати ЗАМОВЛЕННЯ ЗА ASC для порядку зростання та ЗАМОВИТИ ЗА DESC для сортування результатів у порядку зменшення або у вказаному стовпці.
Синтаксис HiveQL для порядку ODER BY за зростанням може бути показаний нижче:
SELECT, FROM ORDER BY ASC;
SELECT, FROM ORDER BY ASC;
Синтаксис HiveQL для порядку ODER BY за убуванням може бути представлений як нижче:
SELECT, FROM ORDER BY DESC;
SELECT, FROM ORDER BY DESC;
Статті про зростання та зменшення можуть бути одночасно використані з декількома стовпцями у пункті ЗАМОВЛЕННЯ ДО, як показано нижче:
SELECT, FROM ORDER BY ASC DESC;
SELECT, FROM ORDER BY ASC DESC;
2. ЗАМОВЛЕННЯ за значеннями NULL та NULL
Останні версії Hive також підтримують порядок сортування за значенням NULL.
За замовчуванням порядок сортування значень NULL для ORDER BY ASC - NULLS ПЕРШИЙ. Він сортує всі значення NULL до початку відсортованого результату.
Аналогічно, порядок сортування значень NULL для ORDER BY DESC за замовчуванням NULLS LAST. Він сортує всі значення NULL до кінця відсортованого результату.
Ви також можете вказати NULLS FIRST та NULLS LAST разом із ORDER BY ASC або ORDER BY DESC відповідно до ваших вимог та зручності.
Синтаксис NULLS ПЕРШИЙ пункт разом із порядком ORDER BY:
SELECT, FROM ORDER BY ASC NULLS LAST;
SELECT, FROM ORDER BY ASC NULLS LAST;
Синтаксис NULLS LAST clause разом із ORDER BY низхідним:
SELECT, FROM ORDER BY DESC NULLS FIRST;
SELECT, FROM ORDER BY DESC NULLS FIRST;
3. ЗАМОВЛЕННЯ ЗА ЗАМОВЛЕННЯМ І ПО ГРАНИМ
Застереження LIMIT необов’язкове з пунктом ORDER BY.
Застереження LIMIT може бути використане для підвищення продуктивності. Застереження LIMIT може використовуватися для уникнення непотрібної обробки даних.
Запит LIMIT буде вибирати з результату лише обмежену кількість значень для верифікації.
Пункт LIMIT з ORDER За допомогою пункту може бути показано нижче:
SELECT, FROM ORDER BY ASC LIMIT 10;
SELECT, FROM ORDER BY ASC LIMIT 10;
Заказ "ЗАМОВИТИ БУК" також може поєднуватися з пунктом OFFSET та пунктом LIMIT, щоб зменшити кількість результату. Синтаксис того ж може бути показаний як:
SELECT, FROM ORDER BY ASC LIMIT 10 OFFSET 10;
SELECT, FROM ORDER BY ASC LIMIT 10 OFFSET 10;
Приклади у наказі вулика за
Розглянемо наступну зразкову таблицю Співробітник, яка містить ідентифікатора працівника як EmpID, ім'я працівника як EmpName, Призначення, Департамент як відділ, Рівень роботи як JL та Зарплату.
Приклад №1
Код:
SELECT * FROM Employee ORDER BY JL ASC;
Вихід:
Приклад №2
Код:
SELECT * FROM Employee ORDER BY Salary DESC LIMIT 3;
Вихід:
Приклад №3
Код:
SELECT EmpId, EmpName, Designation, Dept FROM Employee where Salary < 50000 ORDER BY EmpName ASC JL ASC;
Вихід:
Висновок
ЗАМОВИТИ В у вулику дозволяє сортувати дані у порядку зростання чи за убуванням. ORDER BY може бути поєднаний з іншими пунктами для отримання відсортованих даних. ORDER BY відрізняється від SORT BY, оскільки SORT BY сортує дані в редукторі, але ORDER BY сортує всі дані.
Рекомендовані статті
Це посібник для вулика Порядок від. Тут ми обговорюємо, як ми можемо використовувати порядок за функцією у вулику та різні приклади з кодами та виходами. Ви також можете ознайомитись з іншими нашими пов’язаними статтями, щоб дізнатися більше -