Python 앱에서 Pymongo를 사용하여 MongoDB 데이터를 접근할 수 있습니다. 이때 id값을 사용해 찾거나 수정하기 위한 방법은 무엇일까요?! Pymongo를 사용하는 경우 id값으로 찾기바로 pymongo 패키지의 ObjectId 함수를 사용할 수 있습니다. 이를 사용하면 간단하게 id만 알면 접근할 수 있습니다. 예를들어 id값이 아래와 같다면? - id : '5a1dfds52e3d21z3hg1w24y3'만약 myCollection이름의 컬렉션에서 find를 수행하여 위의 id를 찾으려면 아래와 같습니다.from pymongo import ObjectIdid = '5a1dfds52e3d21z3hg1w24y3'item = mongo.db.myCollection.find({ '_id': Objec
Last Modified : 2020-07-06 19:33:42Python 앱에서 MongoDB를 사용하는 경우 불러온 커서 객체를 리스트 타입(배열)으로 변경하는 방법을 알아봅니다.! MongoDB 커서 리스트로 바꾸기먼저 리스트 타입으로 변경하는 이유는 무엇일까요? MongoDB의 레코드를 find() 등을 사용하여 여러 개로 불러오면 커서 객체가 반환됩니다. 그런데 이 값을 파이썬에서 변경하거나 json 등의 형태로 반환하기 위해서 리스트로 타입 변경을 하게 됩니다.이제 커서 객체를 리스트로 변경해보겠습니다. 이 경우 아래와 같이 두 가지 방법을 사용할 수 있습니다.@ list() 함수 사용하기먼저 list() 함수를 사용하는 방법입니다. db.myCollection.find()로 원하는 데이터를 반환한 경우 list()를 사용하여 타입을 변경합니다.results
Last Modified : 2020-11-09 16:31:44파이썬 앱에서 pymongo를 사용하는 경우 만약 임의의 document를 랜덤하게 가져오려면 어떻게 하는지 알아봅니다.# pymongo 랜덤 document 선택, 가져오기먼저 방법을 생각해보면 아래와 같이 두 가지 방법이 있습니다.하나. 전체 개수를 계산한 후 임의의 수를 구하여 skip()을 사용하는 방법; 전체 개수를 알면 이 값보다 작은 임의의 수를 skip()하여 핸덤한 document를 선택할 수 있을 것입니다.위의 방법도 매우 간단한 방법이지만 전체 개수를 구하는 쿼리와 랜덤한 값을 구하는 로직이 필요합니다. 그래서 더 단순한 방법을 아래에서 알아봅니다.하나. aggregate()의 $sample 사용 방법이 방법은 MongoDB 내부에서 한 번의 쿼리만 사용해 임의의 도큐멘트를 반환하므로 가
Last Modified : 2020-05-11 13:01:07Python 환경에서 MongoDB를 사용 할 경우 PyMongo를 사용합니다. 그런데 새로운 컴퓨터에 개발환경을 설정하는 과정에서 에러가 발생하였습니다."Collection, insert(or update) method not found"컬렉션에 사용할 메소드가 존재하지 않는다는 에러가 발생하였습니다. 새로운 개발 환경과의 차이점은 MongoDB 버전을 최신 버전인 5.0으로 바꾸었는데 아무래도 그 부분이 원인인 것 같았습니다. 확인해보니 기존에는 MongoDB 버전이 3이었습니다.! MongoDB 버전을 낮추고 다시 해보았으나 실패그래서 MongoDB 5.0을 삭제한 후 다시 3 버전으로 설치하였습니다. 재설치가 끝난 후 테스트를 해봐았는데 여전히 잘 동작하지 않고 해당 method가 컬렉션에 존재하지
Last Modified : 2022-01-23 19:17:15