본문 바로가기
데이터베이스

mongodb Unique 인덱스 : 색인된 키에 대해 이미 있거나 중복된 것은 insert되지 않는다

by 혜룐 2018. 2. 8.


  - 복합 인덱스 (Compound Key Index) : 여러개의 key를 기반으로 인데스 생성가능 

     예) db.things.ensureIndex({age:1, name:-1});

  - 희소 인덱스 (Sparse Index) : 색인된 필드만 인덱스 한다 

     예) db.things.ensureIndex({title:1}, {sparse:true}); 기본은 false

  - Unique 인덱스 : 색인된 키에 대해 이미 있거나 중복된 것은 insert되지 않는다 

     예) db.things.ensureIndex({name:1}, {unique: true});



mongos> db.event_participants.createIndex({"user_id":1,"event_name":1},{unique:true})

mongos> db.event_participants.getIndexes()

[

{

"v" : 1,

"name" : "_id_",

"key" : {

"_id" : 1

},

"ns" : "event_participants.event_participants"

},

{

"v" : 1,

"name" : "user_id_1_event_name_1",

"key" : {

"user_id" : 1,

"event_name" : 1

},

"unique" : true,

"ns" : "event_participants.event_participants"

}

]