에서 $로 $ 정렬이 나는 $in
운영자와 MongoDB를 find
쿼리를 실행하고 있습니다 : [name1, name2, ...]
: 내 이름 배열과 동일한 순서로 정렬되는 결과 싶습니다MongoDB를 :
collection.find({name: {$in: [name1, name2, ...]}})
. 이것을 어떻게 성취합니까?
참고 : pongongo를 통해 MongoDb에 액세스하고 있지만 그다지 중요하지 않다고 생각합니다.
편집 : 그것은 MongoDB를에 기본적으로이를 달성하는 것은 불가능하다, 나는 전형적인 파이썬 솔루션을 사용하여 종료 :
names = [name1, name2, ...]
results = list(collection.find({"name": {"$in": names}}))
results.sort(key=lambda x: names.index(x["name"]))
당신이 레코드를 원하는 뜻을 포함 할 것이다 먼저 name1을 포함하고 name2를 포함하는 레코드가 뒤에 오는가? – paulmelnikow
네, 맞습니다. 현재의 경우 이름은 고유하지만 관련이 없습니다. 그렇습니까? –
이것은 일반적인 쿼리를 통해 현재 가능하지 않습니다. – Sammaye