Node.js 기본 사항 — MongoDB 인덱스
5133 단어 programmingjavascriptwebdevnode
지금 http://jauyeung.net/subscribe/에서 내 이메일 목록을 구독하십시오.
Node.js는 실행되는 프로그램을 만드는 인기 있는 런타임 플랫폼입니다.
브라우저 외부에서 JavaScript를 실행할 수 있습니다.
이 기사에서는 Node.js를 사용하여 프로그램을 만드는 방법을 살펴보겠습니다.
인덱스 생성
컬렉션에서 색인을 생성하여 컬렉션에서 검색을 활성화할 수 있습니다.
예를 들어 다음과 같이 작성할 수 있습니다.
const { MongoClient } = require('mongodb');
const connection = "mongodb://localhost:27017";
const client = new MongoClient(connection);
async function run() {
try {
await client.connect();
const db = client.db("test");
const testCollection = await db.collection('test');
const indexResult = await testCollection.createIndex({ name: 1 });
console.log(indexResult)
await testCollection.deleteMany({})
const result = await testCollection.insertMany([
{ "_id": 1, "name": "apples", "qty": 5, "rating": 3 },
{ "_id": 2, "name": "bananas", "qty": 7, "rating": 1 },
{ "_id": 3, "name": "oranges", "qty": 6, "rating": 2 },
{ "_id": 4, "name": "avocados", "qty": 3, "rating": 5 },
]);
console.log(result)
} finally {
await client.close();
}
}
run().catch(console.dir);
createIndex
에서 testCollection
메서드를 호출하여 인덱스를 추가합니다.그런 다음 다음과 같이 작성하여 컬렉션을 쿼리할 수 있습니다.
const { MongoClient } = require('mongodb');
const connection = "mongodb://localhost:27017";
const client = new MongoClient(connection);
async function run() {
try {
await client.connect();
const db = client.db("test");
const testCollection = await db.collection('test');
const indexResult = await testCollection.createIndex({ name: 1 });
console.log(indexResult)
await testCollection.deleteMany({})
const result = await testCollection.insertMany([
{ "_id": 1, "name": "apples", "qty": 5, "rating": 3 },
{ "_id": 2, "name": "bananas", "qty": 7, "rating": 1 },
{ "_id": 3, "name": "oranges", "qty": 6, "rating": 2 },
{ "_id": 4, "name": "avocados", "qty": 3, "rating": 5 },
]);
console.log(result)
const query = { name: "apples" };
const sort = { name: 1 };
const projection = { name: 1 };
const cursor = testCollection
.find(query)
.sort(sort)
.project(projection);
cursor.forEach(console.dir);
} finally {
await client.close();
}
}
run().catch(console.dir);
'text'
를 호출할 때 색인할 키 값을 createIndex
로 설정하여 텍스트 색인을 생성할 수 있습니다.예를 들어 다음과 같이 작성할 수 있습니다.
const { MongoClient } = require('mongodb');
const connection = "mongodb://localhost:27017";
const client = new MongoClient(connection);
async function run() {
try {
await client.connect();
const db = client.db("test");
const testCollection = await db.collection('test');
await testCollection.dropIndexes();
const indexResult = await testCollection.createIndex({ name: 'text' });
console.log(indexResult)
await testCollection.deleteMany({})
const result = await testCollection.insertMany([
{ "_id": 1, "name": "apples", "qty": 5, "rating": 3 },
{ "_id": 2, "name": "bananas", "qty": 7, "rating": 1 },
{ "_id": 3, "name": "oranges", "qty": 6, "rating": 2 },
{ "_id": 4, "name": "avocados", "qty": 3, "rating": 5 },
]);
console.log(result)
const query = { $text: { $search: "apples" } };
const projection = { name: 1 };
const cursor = testCollection
.find(query)
.project(projection);
cursor.forEach(console.dir);
} finally {
await client.close();
}
}
run().catch(console.dir);
우리는 다음을 가지고 있습니다:
const indexResult = await testCollection.createIndex({ name: 'text' });
name
필드에 텍스트 인덱스를 추가합니다.그러면 다음과 같이 작성할 수 있습니다.
const query = { $text: { $search: "apples" } };
텍스트 검색 쿼리를 만들고 그 결과를 반환합니다.
결론
createIndex
메서드를 사용하여 MongoDB 컬렉션에 인덱스를 추가할 수 있습니다.텍스트 검색을 활성화하기 위해 텍스트 인덱스를 추가할 수 있습니다.
Reference
이 문제에 관하여(Node.js 기본 사항 — MongoDB 인덱스), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/aumayeung/node-js-basics-mongodb-indexes-4kjh텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)