好吧,我在这个格式中得到了这些索引,如字符串中的10.9.8.1。
我想按顺序排列带有SQL查询的记录,最重要的是int。
像:
1
1.3
1.3.1
1.3.4
1.3.5
7.8
10.4.5
10.5
11.3
如何实现这一目标?
答案 0 :(得分:1)
您可以使用带有参数" yourProperty"的javascrip函数。像这样:
var g=orient.getGraph();
var result=[];
var list=[];
var b=g.command("sql","select from v");
for(i=0;i<b.length;i++){
var record=b[i];
var index=record.getProperty(yourProperty);
index+="."+record.getId().toString();
var vector=index.split('.');
list.push(vector);
}
list.sort(function (a, b) {
var dim1=a.length-1;
var dim2=b.length-1;
for(j=0;j<dim1;j++){
var value1=parseInt(a[j]);
if(j<dim2){
var value2=parseInt(b[j]);
if(value1>value2)
return 1;
else if (value1<value2)
return -1;
}
}
if(dim1>dim2)
return 1;
else
return -1;
});
for(m=0;m<list.length;m++){
var element=list[m];
var id=element[element.length-1];
for(h=0;h<b.length;h++){
var id2=b[h].getId().toString();
if(id==id2){
result.push(b[h]);
break;
}
}
}
return result;
希望它有所帮助。