spark sql根据某个数字字段进行排序失效问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spark sql根据某个数字字段进行排序失效问题相关的知识,希望对你有一定的参考价值。

参考技术A 举个例子,我的一个dataframe表里有uid,day,cnt三个字段,如果我要根据cnt进行倒序排列,首先要确保cnt的类型是integer,否则spark sql的order by cnt是不会生效的。

对table根据某个属性值进行排序

问题:给定一个table如下,点击按钮根据年龄对表进行排序;

技术分享

 1 <table border="" cellspacing="" cellpadding="">
 2     <tr><th>姓名</th><th>年龄</th></tr>
 3     <tr><td>a</td><td>2</td></tr>
 4     <tr><td>b</td><td>4</td></tr>
 5     <tr><td>c</td><td>5</td></tr>
 6     <tr><td>d</td><td>1</td></tr>
 7     <tr><td>e</td><td>3</td></tr>
 8 </table>
 9 <input type="button" value = "sort"/>

思路:

1.将dom中的tr放到数组中;

2.利用数组的sort方法排序;

3.排序完毕后用重绘页面;

 

代码如下:

 1 var btn = document.getElementsByTagName("input")[0];
 2 var trs = document.getElementsByTagName("tr");
 3 var arr = [];
 4 for(var i = 1;i<trs.length;i++){
 5     arr.push(trs[i]);
 6 }
 7 btn.onclick = function(){
 8     arr.sort(function(x,y){
 9         return x.getElementsByTagName("td")[1].innerHTML-y.getElementsByTagName("td")[1].innerHTML
10     }).forEach(function(i){
11         document.getElementsByTagName("table")[0].appendChild(i);
12     })
13     
14 }

 

以上是关于spark sql根据某个数字字段进行排序失效问题的主要内容,如果未能解决你的问题,请参考以下文章

实验 9 根据材料编程

如何在不使用 Spark SQL 的情况下对 Spark 中的数据帧进行排序?

用SQL语句设置某个字段的排序方式

如何根据 Java Spark 2.1.1 中的字段名称对 structType 进行排序/排序

如何使用 Spark SQL 对均值列进行排序?

sql按某个字段值顺序排序