栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 云计算 > 云平台

hive查找字符出现的位置find

云平台 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

hive查找字符出现的位置find

问题场景

查找Face这个标签在image_labels字段中出现的位置。

尝试了2个函数,find_in_set和locate 函数,如下所示

select feed_id,db_time, user_id,image_labels,
    find_in_set('Face',image_labels) as a,
	locate('Face',image_labels)  as b 
    from gravity.ods_gravity_items_hourly
    where d_s between 20220505 and 20220505
    and image_labels like '%Face%' 
    and user_id != 1000000000

结果如图:

可以看出两者区别如下:

  • find_in_set 将image_labels作为一个以逗号分割的集合,返回的是’Face’ 出现的位置(从1开始)
  • locate 将image_labels作为一个字符串,返回的是’Face’ 在该字符串中第一次出现的位置(从1开始)
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/897608.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号