2017-05-10 8 views
0

Reql과 함께 일하고 있습니다. 제가 직면하고있는 문제는 동일한 순서대로 동일한 값을 필터링해야한다는 것입니다.distinct() 뒤에 순서가 변경됨 : RethinkDb Javascript

pluck 및 distinct()가 적용된 후에는 값이 올 바르지 만 올바른 순서가 아니기 때문에 순서가 손실됩니다.

예제 쿼리은

r.db('DB').table("heroes").orderBy('createdAt') 
.pluck({'loc':['coordinates']}) 
    .distinct() 

사람은 올바른 순서로 데이터를 반환 할 수 있도록 저를, 쿼리를 수정하는 데 도움이 될 수 있습니다.

감사합니다.

답변

0

또 다른 해결 방법을 찾은 후에 나는이 샘플 배열의 솔루션을 복제하여 lat long 배열의 중복 배열을 처리하는 대신 자바에서 작업을 수행하기 위해 here (@trincot 덕분에) 질문을 게시했습니다. 뚜렷한 결과를 얻고 순서가 유지됩니다.

var array = [ 
    { person: { amount: [1,1] } }, 
    { person: { amount: [1,1] } }, 
    { person: { amount: [2,1] } }, 
    { person: { amount: [1,2] } }, 
    { person: { amount: [1,2] } } 
]; 

var result = [...new Map(array.map(o => [JSON.stringify(o), o])).values()]; 

console.log(result); 

도움을받을 수있는 사람의 사례.