Node.js 기본 사항 — MongoDB 결과 건너뛰기 및 제한

https://www.amazon.com/John-Au-Yeung/e/B08FT5NT62에서 Amazon에서 내 책을 확인하십시오.

지금 http://jauyeung.net/subscribe/에서 내 이메일 목록을 구독하십시오.

Node.js는 실행되는 프로그램을 만드는 인기 있는 런타임 플랫폼입니다.

브라우저 외부에서 JavaScript를 실행할 수 있습니다.

이 기사에서는 Node.js를 사용하여 프로그램을 만드는 방법을 살펴보겠습니다.

반환된 결과 수 제한


limit 메서드를 호출하여 반환되는 결과의 수를 제한할 수 있습니다.

예를 들어 다음과 같이 작성할 수 있습니다.

const { MongoClient } = require('mongodb');
const connection = "mongodb://localhost:27017";
const client = new MongoClient(connection);

async function run() {
  try {
    await client.connect();
    const testCollection = await client.db("test").collection('test');
    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 = {};
    const sort = { length: -1 };
    const limit = 3;
    const cursor = testCollection.find(query).sort(sort).limit(limit);
    await cursor.forEach(console.dir);
  } finally {
    await client.close();
  }
}
run().catch(console.dir);


최대 결과 수를 3으로 설정하기 위해 limit와 함께 limit 메서드를 호출합니다.

또한 쿼리 개체에서 속성을 설정할 수 있습니다.

예를 들어 다음과 같이 작성할 수 있습니다.

const { MongoClient } = require('mongodb');
const connection = "mongodb://localhost:27017";
const client = new MongoClient(connection);

async function run() {
  try {
    await client.connect();
    const testCollection = await client.db("test").collection('test');
    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 = {};
    const options = {
      sort: { rating: -1 }, limit: 3
    }
    const cursor = testCollection.find(query, options);
    await cursor.forEach(console.dir);
  } finally {
    await client.close();
  }
}
run().catch(console.dir);


결과 수를 제한하기 위해 limit를 호출하는 대신 options 속성을 limit 개체에 넣습니다.
skip 메서드를 호출하여 첫 ​​번째 결과 수를 건너뛸 수 있습니다.

예를 들어 다음과 같이 작성할 수 있습니다.

const { MongoClient } = require('mongodb');
const connection = "mongodb://localhost:27017";
const client = new MongoClient(connection);

async function run() {
  try {
    await client.connect();
    const testCollection = await client.db("test").collection('test');
    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 = {};
    const sort = { length: 1 };
    const limit = 3;
    const skip = 3;
    const cursor = testCollection.find(query).sort(sort).limit(limit).skip(skip);
    await cursor.forEach(console.dir);
  } finally {
    await client.close();
  }
}
run().catch(console.dir);

skip 메서드와 limit 메서드를 사용하여 결과에 페이지 매김을 추가합니다.

주어진 페이지에 도달하기 위해 결과의 양을 건너뜁니다.

그리고 limit 페이지당 최대 결과 수를 설정합니다.

결론



MongoDB Node.js 클라이언트를 사용하여 결과 수를 제한하고 일부 결과를 건너뛸 수 있습니다.

좋은 웹페이지 즐겨찾기