max只会显示指定字段的大小变化,而maxBy会显示其他字段的变化。
max:取指定字段的当前的最大值,如果有多个字段,其他非比较字段,以第一条为准。
maxBy:取指定字段的当前的最大值,如果有多个字段,其他字段以最大值那条数据为准。这种比较符合常识。
举例,原始数据,如下:
java
stock_277,22.3760055422398,SYSStock,1631002964777
stock_277,1.141256900167285,UDFStock,1631002965778
stock_277,43.238164914104345,UDFStock,1631002966779
stock_278,11.19084433119833,UDFStock,1631002967779
stock_278,1.029404720792922,SYSStock,1631002968779
max计算结果如下:
maxby计算结果如下:
注意:是按照id作为key进行分组,所以上面max和maxby的计算结果,都是在各自的分组中计算出来的。