모든 가능한 방법으로이 작업을 시도했지만 모든 리소스를 검색했지만 사소한 문제인 것으로 보이는 솔루션을 찾을 수 없습니다.문자열을 MongoDB 집계에서 숫자로 변환
숫자가 아닌 문자열로 된 field
문서가있는 다른 곳에서 가져온 거대한 모음이 있습니다. field
에 정렬을 시도하지만 자연스럽게 숫자가 아닌 문자열 정렬을 수행합니다. $sum
또는 $avg
을 수행하면 각각 0
및 null
이 산출됩니다.
내가 필사적으로 필요로하는 것은 내 문자열 필드를 숫자 값으로 변환하는 방법이지만 그러한 기능은 존재하지 않는 것 같습니다. 산술 연산자가 분명히 숫자 값을 원하기 때문에 아무런 성공없이 $add: ['field', 0]
이나 $multiply: ['field', 1]
같은 트릭을 시도했습니다. 자동 변환이 발생하지 않는 것 같습니다. 난이 $group
과 $project
단계에서 아무 소용이 시도했다.
그 밖의 모든 것이 실패하면 내 field
에 해당하는 새 숫자 필드를 삽입하여 내 컬렉션을 업데이트해야하지만이 컬렉션은 외부 소스에서 빈번하고 완전히 다시 가져 오기 때문에 기본 솔루션이 아닙니다.
가능한 중복 https://stackoverflow.com/questions/29487351/how-to-convert-string-to-numerical-values-in-mongodb ([MongoDB의에서 숫자 값으로 문자열을 변환하는 방법]) – dnickless
그 게시물 (https://stackoverflow.com/questions/29487351/how-to-convert-string-to-numerical-values-in-mongodb) 실제로 값을 변환 향해 각도. –