2023. 11. 3. 11:38ㆍ웹개발
3T를 쓰는 경우 타겟컬렉션(앞부분)을 지정해야하지만 컴패스를 이용하면 컬리괄호부분만 쓰면 된다.
INSERT
# 1개 입력
db.collection.save({_id: 1, foo: 'bar'})
# 2이상 입력
db.collection.insertMany({field1: 'value1', field2: 'value2'})
SELECT
# (모든)갯수 확인하기
db.getCollection('collection1').find({}).count()
# 제일 처음값 가져오기
db.collection.findOne()
# 모든 내용 보기
db.getCollection('collection1').find({})
# 옵션에 맞는 값 가져오기
## 옵션 1개
### 특정값이 정확한 경우
db.getCollection('collection1').find({foo: 'bar'})
### 특정값을 포함하는 경우(해당 값 하나에서 쪼개어 볼때 있는 경우)
db.getCollection('collection1').find({foo: {$regex: 'ar' }})
db.getCollection('collection1').find({foo: /ar/})
### 특정값을 포함하는 경우(리스트안에 온전한 그 값이 있는경우)
db.getCollection('collection1').find({foo: {$in: ['value1', 'value2']}})
> 오퍼레이터는 $nin, $lt, $gt, $and, $or, $exists 등 더 있다.
UPDATE
# 1개 수정
db.collection.updateOne({field1: 'value1'}, {$set:{ field1: 'value11'} })
# 다수 수정
db.collection.updateMany({field1: 'value1'}, {$set:{ field1: 'value11'} } )
> 전체를 다 수정하려면 앞의 컬리브라켓을 공백으로 두면 된다.
DELETE
# 1개 삭제
db.collection.deleteOne( field1: 'value1')
# 다수 삭제
db.collection.deleteMany({field1: 'value1'})
>> 타게팅할때 네스티드오브젝트인 경우 dot으로 연결하면 된다.
ex) data.address.seoul ~~
'웹개발' 카테고리의 다른 글
vsc로 c# 디폴트 프로그램 실행하기 (4) | 2024.09.11 |
---|---|
rhel7 gcc 문제 - 해결은 아닌데 답은 알았다 (0) | 2023.11.03 |
eslint (0) | 2023.09.26 |
몽고디비 와이어드타이거 에러 (0) | 2023.08.09 |
CMD로 D:// 디렉토리 변경 안 될때 강제로 이동시키기 (0) | 2023.02.13 |