MySQL中的Field()在hive中有啥功能吗?

Posted

技术标签:

【中文标题】MySQL中的Field()在hive中有啥功能吗?【英文标题】:Field() in MySQL any function in hive?MySQL中的Field()在hive中有什么功能吗? 【发布时间】:2019-10-15 05:56:56 【问题描述】:

我正在 Hive 中寻找一种类似于 mysql 中的 Field() 的方法

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

这将按照以下指定顺序返回我的订单。有什么方法可以在 Apache Hive 中实现同样的效果吗?

【问题讨论】:

【参考方案1】:

有同样的field function in Hive:field(val T,val1 T,val2 T,val3 T,...)

返回valval1,val2,val3,... 列表中的索引,如果没有找到0。例如 field('world','say','hello','world') 返回3。 支持所有原始类型,使用str.equals(x) 比较参数。如果 val 为 NULL,则返回值为 0。

【讨论】:

我想根据状态按记录订购。蜂巢中的字段是更多搜索,不是吗? @subro 它的工作方式与 MySQL 相同。使用相同的ORDER BY FIELD(status, 'In Process', 'On Hold', 'Cancelled', 'Resolved', 'Disputed', 'Shipped'); 所以,它正在按 1,2,3,4..etc 获取订单。现在我明白了!谢谢

以上是关于MySQL中的Field()在hive中有啥功能吗?的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 中有啥东西等于 CodeIgniter 中的 enable_profiler() 吗?

在 hive 和 impala 中收集列表功能

有啥方法可以在基本 T4 模板中具有功能吗?

我们可以将 strright hive 功能转换为 oracle 功能吗

ms访问,追加查询

Django:有啥区别(rel & field)