array_position:查找元素位置
速查结论
array_position(array, element) 是 Spark SQL 中用于**查找元素在数组中的首次出现位置(从1开始)**的函数。
语法
array_position(array, element)
参数说明
| 参数 | 说明 |
|---|---|
array | 要搜索的数组 |
element | 要查找的元素 |
示例
> SELECT array_position(array(312, 773, 708, 708), 708);
3
> SELECT array_position(array(312, 773, 708, 708), 414);
0
常见报错与避坑指南
- 索引从 1 开始:返回的位置索引从 1 开始计数,匹配到第一个元素时返回 1,不是 0。
- 未找到返回 0:如果数组中不存在目标元素,函数返回 0,不会返回 NULL 或抛异常。
- 只返回首次出现位置:即使元素在数组中多次出现,也只返回第一次出现的索引。
Since: 2.4.0
📱关注公众号
「数据仓库技术」文章同步更新,不错过每一篇干货

💬加群交流
备注「数据仓库技术」加入社群,每日一道大厂SQL真题
