arg_max(col1, col2)
效果:查询col1列的最大值,并返回该记录中col2的值。
arg_min(col1, col2)
效果:查询col1列的最小值,并返回该记录中col2的值。
优势:
1:一般我们要查询某个列排名第一的其他字段的值的时候,一般会用row_number进行排序,然后取rn等于1的记录,当类似操作很多且数据量大的时候,是很影响性能的。而使用arg_max(col1,col2)就可以轻松的得到这个结果。
2:或者当我们想取某个字符串列中最长的记录的内容时,一般我们都是先取最大的长度,然后使用字符串长度进行关联,最后才能取到该列中长度最长的字符串内容,非常的繁琐且没有必要。而使用arg_max(str_length, str) 就可以轻松的得到这个结果。
手边暂无电脑,待更新实操效果。
如果对你有帮助,请点赞收藏关注,谢谢支持!