2016-04-16 55 views

回答

2

您可以使用在Spark 1.4中添加的窗口功能特性 假設我們有一個productRevenue表,如下所示。 enter image description here

答案什麼是最好的銷售和第二暢銷的產品在每一個類別如下

SELECT product,category,revenue FROM 
    (SELECT product,category,revenue,dense_rank() 
     OVER (PARTITION BY category ORDER BY revenue DESC) as rank 
    FROM productRevenue) tmp 
WHERE rank <= 2 

提斯會給你想要的結果

+0

這個偉大的工程在斯卡拉。然而,由於SQL字符串失敗,如此處所述的一個奇怪的錯誤https://gist.github.com/geoHeil/3dff11860ae042792cea6970447c4592失敗:''聯盟''預期,但'('發現 –

+2

解決方法是:http://stackoverflow.com /問題/ 31786912 /火花故障工會預期,但發現的 –