데이터베이스 작업을 위해 Node.js를 사용할 때 우리는 MongoDB를 백엔드 데이터베이스로 사용하는 경우가 많으며 MongoDB에서 일반적으로 사용되는 데이터 유형은 ObjectId입니다. ObjectId는 12바이트로 구성된 전역 고유 식별자이며 그 구조는 다음과 같습니다.
ObjectID("5f750930cc775b0c6b387532")
MongoDB에서 각 문서는 문서를 고유하게 식별하기 위해 "_id" 필드를 포함해야 합니다. "_id" 필드를 명시적으로 정의하지 않으면 MongoDB는 문서에 대한 ObjectId를 자동으로 생성합니다.
이 기사에서는 Node.js에서 쿼리 작업에 ObjectId를 사용하는 방법을 소개합니다.
ObjectId를 사용하여 문서를 쿼리할 수 있습니다. 예는 다음과 같습니다.
const MongoClient = require('mongodb').MongoClient; const ObjectID = require('mongodb').ObjectID; const url = 'mongodb://localhost:27017/test'; MongoClient.connect(url, (err, db) => { if (err) throw err; const dbo = db.db('test'); const query = { _id: ObjectID("5f750930cc775b0c6b387532") }; dbo.collection('users').findOne(query, (err, result) => { if (err) throw err; console.log(result); db.close(); }); });
위의 예에서는 ObjectId를 생성하고 이를 쿼리 기준으로 사용하여 단일 문서를 찾았습니다. 문서가 있으면 문서를 인쇄하고 데이터베이스 연결을 닫습니다.
ObjectId를 사용하여 여러 문서를 쿼리하려면 MongoDB의 $in 연산자를 사용할 수 있습니다. 예는 다음과 같습니다.
const MongoClient = require('mongodb').MongoClient; const ObjectID = require('mongodb').ObjectID; const url = 'mongodb://localhost:27017/test'; MongoClient.connect(url, (err, db) => { if (err) throw err; const dbo = db.db('test'); const query = { _id: { $in: [ObjectID("5f750930cc775b0c6b387532"), ObjectID("5f75093ecc775b0c6b387533")] } }; dbo.collection('users').find(query).toArray((err, result) => { if (err) throw err; console.log(result); db.close(); }); });
위 예에서는 $in 연산자를 사용하여 여러 ObjectId를 쿼리합니다. 문서가 있으면 결과를 인쇄하고 데이터베이스 연결을 닫습니다.
MongoDB에서 문서에는 중첩 문서가 포함될 수 있으며 ObjectId를 사용하여 중첩 문서를 쿼리할 수 있습니다. 예는 다음과 같습니다.
const MongoClient = require('mongodb').MongoClient; const ObjectID = require('mongodb').ObjectID; const url = 'mongodb://localhost:27017/test'; MongoClient.connect(url, (err, db) => { if (err) throw err; const dbo = db.db('test'); const query = { "author.id": ObjectID("5f750930cc775b0c6b387532") }; dbo.collection('articles').find(query).toArray((err, result) => { if (err) throw err; console.log(result); db.close(); }); });
위 예에서는 ObjectId를 기준으로 "author" 필드에 중첩된 문서를 쿼리합니다. 하위 문서가 있으면 하위 문서를 인쇄하고 데이터베이스 연결을 닫습니다.
Summary
ObjectId는 MongoDB의 매우 중요한 데이터 유형 중 하나입니다. Node.js를 사용하여 데이터베이스 작업을 수행할 때 ObjectId 관련 작업에 능숙해야 합니다. 이 문서에서는 ObjectId를 통한 단일 문서 쿼리, ObjectId를 통한 여러 문서 쿼리, ObjectId를 통한 중첩 문서 쿼리 등 쿼리 작업에 ObjectId를 사용하는 방법을 소개합니다. 이 글이 모든 사람에게 도움이 되기를 바랍니다.
위 내용은 nodejs 객체 ID 쿼리의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!