MongoDB(9)
-
Mongoose ($inc) Number 값을 자동으로 변환 하는 방법
배경 Number타입의 필드를 요청 당 설정 값으로 값을 올려야 할 때 해결방안 $inc 사용 사용방법 변경 값을 +2 하는 방법 Model.updateOne({ 조건 값 }, { $inc: { 변경해야하는 필드 : 2 } }); 변경 값을 -2 하는 방법 Model.updateOne({ 조건 값 }, { $inc: { 변경해야하는 필드 : -2 } }); 변경 값이 여러개 경우 Model.updateOne({ 조건 값 }, { $inc: { 변경해야하는 필드1 : -2, 변경해야하는 필드2 : 3 } });
2024.01.13 -
MongoDB field 제거 방법
배경 MongoDB에서 개발 중 필요 없는 필드에 데이터가 쌓임 원인 개발 중 사용하지 않는 필드가 존재, 또는 마이그레이션이 진행 된 이후 사용되지 않는 필드가 존재 해결 방안 shell 명령어 db.{삭제해야하는 필드가 있는 컬렉션}.update({검색 조건}, {$unset:{삭제해야하는 필드명 : 1}}) * { $unset : { 삭제해야하는 필드명 : 1 } } 명령어는 필드를 제거한다는 의미이다.
2024.01.13 -
MongoDB 비교연산자 의미 $gt $gte $lte $lt
요약 MongoDB, Mongoose 라이브러리 에서 사용 되는 비교 연산자 의미 및 사용 방법 사용 범위 Number 타입 필드 String 타입 필드 * string 경우 알파벳 순서를 기준으로 문자열을 비교함 Date 타입 필드 의미 gt : 초과 gte : 이상 lt : 미만 lte : 이하 사용 방법 gt ex) type : 3을 초과 값을 검색하는 경우 ex) time : 2023-10-29:00:00:00 시간을 초과 값을 검색하는경우 db.collection.find({type:{$gt:3}}) db.collection.find({time:{$gt:ISODate('2023-10-29')}}) gte ex) type : 3을 이상 값을 검색하는 경우 ex) time : 2023-10-29:0..
2023.10.29 -
MongoDB (Mongoose) Transaction 사용 방법
MongoDB가 4.0, Mongoose는 5.0 버전 부터 트랙젝션이 지원이 되었다. 트랜잭션 사용 시에는 트랜잭션 자체가 원자적으로 동작해야 때문에 비동기로 요청을 하면 안된다. 만약 비동기로 여러개의 데이터가 업데이트가 진행되면 마지막 데이터만 업데이트가 되는 현상이 발생 할 수 있다.1. Mongoose 연결 시 필수 설정import mongoose from 'mongoose';mongoose.connect('mongodb://localhost/mydatabase', { useNewUrlParser: true, useCreateIndex: false, useFindAndModify: false, useUnifiedTopology: true});const session = mongoose.s..
2023.02.26 -
Azure MongoDB(Mongoose) unique 컬럼 명칭 변경 시 주의
unique설정 된 컬럼 이름을 변경 할 때 조건이 있다. 1. 보유하는 데이터 안에 변경 전 컬럼명을 가지는 데이터가 없어야 한다. 2. 컬럼 unique 값을 변경 후 에 서버를 재시작 하고 Cosmos Potal에서 다시 설정 해야한다. 조건을 충족 시킨 후 setting에서 삭제를 진행 하면된다.
2021.12.13 -
Moogoose "__v" 필드
moogoose를 사용하면서 결과값을 보면 맨 밑에 쯤에 "__v"가 있다. 버전 키라고 하는데 문서의 내부 개정판을 설명하고 기본값은 0이다. mongoDB에서 바로 값을 넣으면 생기지 않지만 moogoose 통해 데이터가 삽입이 되면 생긴다. __v를 없애고 싶으면 스키마를 만드는 부분에 { versionKey : false } 를 추가해주면된다 var UserSchema = new mongoose.Schema({ userName: String, }, { versionKey: false }); https://riucc.tistory.com/m/526?category=764382 [MongoDB] - Mongoose __v 제거하기 ○ MongoDB Mongoose __v 제거하기 mongoose를 통..
2020.06.10