find db.c.find() - 여러개를 추가하면 AND 조건으로 해석된다 db.c.find({"user" : "Joe", "age" : 23}) 반환받을 키 지정 db.c.find({},{"user" : 1, "age" : 1}) - find를 통해 특정한 값만 select하고 싶은 경우 {} 뒤에 매개변수에 원하는 키를 지정하면 된다 - _id는 지정하지 않아도 항상 반환되는데 db.c.find({},{"user" : 1, "_id" : 0}) 위에 처럼 0 으로 설정해서 뽑으면 제외할 수 있다 제약 사항 - 쿼리에는 몇가지 제약이 있는데, 그 중 하나는 데이터베이스에서 쿼리 도큐먼트 값은 반드시 상수(변하지 않는 수)여야 한다 - 아래 예시는 작동하지 않는다 db.c.find({"user" : "..
DB/MongoDB
도큐먼트 삽입 - insertOne : 한 개 삽입할 때 db.movies.insertOne({"title" : "Stand By me"}) => 도큐먼트에 "_id" 키가 추가되고(제공하지 않는 경우) 도큐먼트가 몽고DB에 저장된다. - insertMany : 값을 대량 삽입할 때 db.movies.insertOne( {"title" : "Stand By me1"}, {"title" : "Stand By me2"}, {"title" : "Stand By me3"} ) => insertMany를 사용해서 대량 삽입할 때 배열 중간에 있는 도큐먼트에서 특정 유형의 오류가 발생하는 경우, 정렬 연산을 선택했는지 혹은 비정렬 연산을 건택했는지에 따라 발생하는 상황이 달라진다. => 순서가 정해지지 않았다면 정..
MongoDB는 우리가 알고있는 MySQL과 다르게 관계형 데이터베이스가 아닌 도큐먼트 지향 데이터베이스다. 아래에서 부턴 편하게 말하기 위해서 MongoDB를 몽고디비라고 부르겠다 1. 손 쉬운 사용 몽고디비는 도큐먼트의 키와 값을 미리 정의하지 않는다. 따라서 고정된 스키마가 없기 때문에 필요할때마다 필드를 추가하거나 제거할 수 있다 -> 개발속도를 향상 시킬 수 있다 2. 확장 가능한 설계 오늘날 저장할 데이터가 증가함에 따라 개발자는 '데이터베이스를 어떻게 확장할 것인가?' 하는 문제에 부딪히는데, 데이터베이스를 결국 확장한다는 것은 더 큰 장비로 성능확장을 할지, 아니면 데이터를 나눠서 분산확장할 지 결정해야하는데, 성능확장이 더 편한길이지만 가격이 비싸고 결국 더는 확장할 수 없는 물리적 한계..