-
[MongoDB]정리2018 Mad camp/기술 2019. 1. 5. 10:43
NoSQL 기존의 관계지향형 데이터베이스에 의존하지 않는
key-value 쌍의 Document 형태로 저장하는 문서지향적 데이터베이스이다.
SERVER
+--DATABASE
+--COLLECTION
+-- DOCUMENT
+--{ key:value }기본 명령어
MongoDB 서버 실행
mongod
클라이언트로 접속
mongo
사용할 데이터베이스 선택
use db_name
use mongodb_tutorial현재 db 목록 보기 (데이터가 비어있으면 목록에 나와있지 않는다.)
show dbs
db.sample.insert({"name:" "sample"});db 제거 (제거하기 전에 선택 되어 있어야 함)
// use ,,,
db.dropDatabase()컬렉션 생성
db.createCollection(name,[options])
db.createCollection("books")
// 따로 메소드를 사용하지 않아도 document를 추가하면 자동으로 컬렉션 생성
db.people.insert({"name:" "velopert"});
show collections옵션
crapped : data 사이즈 고정, 초과시 오래된 데이터 부터 덮어씀
size : data 사이즈 설정
max : data 갯수 설정컬렉션 제거
db.collection_name.drop()
db.people.drop()Document 삽입
db.collection_name.insert(document)
db.books.insert({"name": "NodeJS Guide", "author": "Velopert"})
db.books.insert([
{"name": "book1", "author": "Velopert"},
{"name": "book2", "author": "Velopert"}
])Document 제거
db.collection_name.remove(criteria,[justOne])
// 하나의 데이터만 삭제 하고싶을 때 true로 설정, default : false
db.books.remove({"name": "NodeJS Guide"})
db.books.remove({"author": "Velopert"},true)Collection 조회
db.collection_name.find([query],[projection])
db.books.find()
db.books.find().pretty() // 예쁘게
db.numbers.find({"value": 56}) // value가 56인 document 조회
db.numbers.find({"value":{ $gt: 100} }) // value가 100 이상인 ...sort
db.collection_name.find().sort({"value":1}) // 오름차순 정렬
db.collection_name.find().sort({"value":-1}) // 내림차순 정렬limit
db.numbers.find().limit(3) // 3개만 보여줍니다.
skip
db.numbers.find().skip(2) // 2개는 생략하고 그 다음부터 보여줍니다.
데이터 수정
db.people.insert([
{name:"Abet",age:19},
{name:"Betty",age:20},
{name:"Charlie",age:23, skills:["modngodb","nodejs"]},
{name:"David",age:23, score:20}
])특정 field 업데이트하기
db.people.update({name:"Abet"}, {$set:{age:20}})
document replace
db.people.update({name:"Betty"}, {"name":"Betty 2nd", age:1})
특정 field 제거
db.people.update({name:"David"}, {$unset:{score:1}})
Mongoose
'2018 Mad camp > 기술' 카테고리의 다른 글
[Node.js]npm, express (0) 2019.01.04 [Node.js]생활코딩 필기 (0) 2019.01.03 [android] intent 활용 예시 (0) 2018.12.30