MongoDB 문법, SQL과의 비교
Back-End/Data Base 2019. 7. 8. 12:17- MongoDB 문법 -
db.memo.count( ) //db안에 들어가 있는 객체들의 갯수를 확인 ( 객체와 그 객체에 대한 속성값을 3번 삽입했으므로 3이 출력된다) 삭제할때는 memo.remove({_id : 2}) // member Collection에 자료 입력 db.member.save( {_id : "kim", passwd : "1234", name : "김철수" } ) // 컬렉션 생성 (테이블에 해당됨) 테이블을 미리 만들고 작업할 수도 있지만 궂이 먼저 만들지 않고 아래 코드처럼 데이터를 입력하면서 만들 수도 있다. db.createCollection("customers") // 데이터를 입력하면서 동시에 collection 생성 db.customers.insert( { name : "김철수", age : 22 } ) //컬렉션 목록 show collections db.<collection 이름>.insert(<생성할 데이터>) //데이터 생성 db.customers.insert( {name : "이철호", age : 25} ) db.customers.insert( {name : "lee", age : 35 } ) db.customers.insert( {name : "hong", age : 45 } ) db.customers.insert( {name : "park", age : 55 } ) //데이터 읽기 db.<collection 이름>.find(<검색 조건>) db.customers.find( {name : "김철수"} ) //데이터 수정 db.<collection 이름>.update(<업데이트할 데이터선택>,<데이터를 입력>)
//수정 확인 db.customers.find( ) //데이터 삭제 db.<collection 이름>.remove(<삭제할 데이터 선택>) db.customers.remove( {name : "kim" } ) db.customers.find( ) //데이터 조회 db.customers.find( ) db.<Collection 이름>.find({ }, {"<표시할 field>" : 1, "<표시하지 않을 field>" : 0}) db.customers.find({ }, {"_id" : 0, "name" : 1}) //db.<collection 이름>.find().limit(<보여주고 싶은 데이터 개수>) db.customers.find().limit(1) //db.<collection 이름>.find().skip(<건너뛰고 싶은 데이터 행수>) db.customers.find().skip(2) //db.<collection 이름>.find().sort("<정렬에 사용할 기준 field>" : <1 혹은 -1>), 1과 -1은 오름차순과 내림차순을 구분할때 사용한다. db.customers.find().sort({"age" : 1}) //오름차순 정렬 db.customers.find().sort({"age" : -1}) //내림차순 정렬 //함수 여러개 호출 가능 db.customers.find().skip(1).limit(2) //하나를 건너뛰고 2개만 찾으라는 의미 //정확히 일치하는 자료를 검색 db.<collection 이름>.find({"<검색할 field>" : <찾을 값>}) db.customers.find({"age" : 25}) //Less Than Equals 검색 db.<collection 이름>.find({"<검색할 field>" : {"$lte" : <기준 값>}}) db.customers.find({"age" : {$lte : 20}}) //20보다 작거나 같은 나이를 검색 //Greater Than 검색 db.<collection 이름>.find({"<검색할 field>" : {"$gt" : <기준 값>}}) db.customers.find({"age" : {$gt : 25}}) //25보다 큰 나이를 검색 //Greater Than Equals 검색 db.<collection 이름>.find({"<검색할 field>" : {"$gte" : <기준 값>}}) db.customers.find({"age" : {$gte : 25}}) //Not Equals 검색 db.<collection 이름>.find({"<검색할 field>" : {"$ne" : <기준 값>}}) db.customers.find({"age" : {$ne : 25}}) //And 조건 db.<collection 이름>.find({$and : ["<검색할 field>" : {"<검색할 field>"} , {"<검색할 field>" : <기준 값>}]}) db.customers.find($and : [{"age" : {$gte : 23}}, {"name" : "park"}]) //나이가 23보다 크거나 같으면서 이름이 park라는 사람을 찾는 구문 //Or 조건 db.<collection 이름>.find({$or : ["<검색할 field>" : {"<검색할 field>"}, {"<검색할 field>" : "<기준 값>"}]}) db.customers.find({$or : [{"age" : {$gte : 23}}, {"name" : "park"}]}) //나이가 23보다 크거나 같고 or 이름이 park인 사람 찾는 구문 |
-sql과의 비교 (mongoDB는 기본적으로 SQL문법을 사용하지 않는다)-
★Mongo DB에서는 Primary Key (기본키)를 _id라고 써야한다.
Insert SQL : insert into users ("name",city) values ("terry","seoul") Mongo DB : db.users.insert({id : "terry", city : "seoul"}) // { }중괄호 안에는 제이슨 문법 Select SQL : select * from users where id = "terry" Mongo DB : db.users.find({_id : "terry"}) Update SQL : update users set city = "busan" where _id = "terry" Mongo DB : db.users.update ({_id : "terry"}), {$set : {city : "Busan"}}) //id가 terry인것을 찾아서 city를 Busan으로 바꾸라는 쿼리 Delete SQL : delete from users where _id = "terry" Mongo DB : db.users.remove({_id : "terry"}) |
-DB 목록- show dbs (현재 사용중인 데이터베이스 목록을 보여줌) -db 생성- use testdb (testdb 데이터베이스를 만들고 testdb데이터베이스를 사용한다) -현재 사용중인 db 이름- db -전체 데이터베이스 목록- show dbs (현재 testdb 데이터베이스를 사용하고 있으므로, 그 안에 있는 데이터베이스들을 보여준다)
|
'Back-End > Data Base' 카테고리의 다른 글
ERD (ER 다이어그램) 작성 방법 (0) | 2019.07.15 |
---|---|
ERD (ER 다이어그램) Cloud (0) | 2019.07.08 |
오라클 반복문 (for loop, while loop) (0) | 2019.07.03 |
오라클 변수 선언 (0) | 2019.07.03 |
기본 용어 정리 (0) | 2019.06.27 |