Field () в MySQL любая функция в улье? - PullRequest
1 голос
/ 15 октября 2019

Я ищу способ в Hive, который может сделать аналогично Field () в MySQL

SELECT orderNumber,status FROM orders
ORDER BY 
    FIELD(status,
        'In Process',
        'On Hold',
        'Cancelled',
        'Resolved',
        'Disputed',
        'Shipped');

, который будет возвращать мне заказы в указанном порядке, как показано ниже. Есть ли способ добиться того же в Apache Hive?

enter image description here

1 Ответ

1 голос
/ 15 октября 2019

В Hive есть такая же полевая функция : : field(val T,val1 T,val2 T,val3 T,...)

Возвращает индекс val в списке val1,val2,val3,... или 0, если не найден. Например, f ield('world','say','hello','world') возвращает 3. Поддерживаются все примитивные типы, аргументы сравниваются с использованием str.equals(x). Если val равен NULL, возвращаемое значение равно 0.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...