Computer >> 컴퓨터 >  >> 프로그래밍 >> MongoDB

MongoDB

  1. MongoDB $push 연산자로 배열에 요소 추가하는 방법

    MongoDB에서 $push 연산자는 기존 배열 필드에 새로운 요소를 추가할 때 사용하는 강력한 업데이트 연산자입니다. 이 글에서는 실제 예제를 통해 $push를 활용해 배열에 값을 추가하는 방법을 단계별로 살펴보겠습니다.1. 컬렉션 생성 및 문서 삽입먼저 insertOne() 메서드를 사용하여 컬렉션을 생성하고 문서를 삽입합니다. 각 문서에는 과목(Subjects) 배열이 포함되어 있습니다.> db.demo738.insertOne({Subjects:[C,C++]}); { acknowledged : true, ins

  2. MongoDB에서 for 루프로 값 저장하기 – save() 메서드 활용법

    개요 MongoDB에서 반복적으로 데이터를 삽입해야 할 때는 for 루프와 save() 메서드를 함께 사용하면 매우 편리합니다. 이 글에서는 for 루프를 이용해 여러 개의 문서(document)를 컬렉션에 저장하고, 저장된 결과를 확인하는 전체 과정을 단계별로 살펴봅니다. 1단계: for 루프로 문서 생성하기 값을 저장하려면 save() 메서드와 for 루프를 조합하여 사용합니다. 아래 예제는 demo739 컬렉션에 동일한 내용의 문서 6개를 순차적으로 저장하는 코드입니다. > for(var v=1; v<7; v++)

  3. MongoDB 중첩 문서에서 키만 추출해 표시하는 방법

    MongoDB에서 배열 안에 여러 개의 하위 문서가 포함된 중첩(nested) 구조를 다루다 보면, 각 문서에 실제로 어떤 필드(키)가 존재하는지 값 없이 키 이름만 확인하고 싶은 경우가 있습니다. 이번 글에서는 애그리게이션 파이프라인의 $reduce, $map, $objectToArray 연산자를 조합하여 중첩 문서의 키 목록만 깔끔하게 추출하는 방법을 알아보겠습니다. 1. 샘플 컬렉션 생성하기 먼저 데모용 컬렉션을 만들고 문서를 하나 삽입합니다. details 필드는 두 개의 하위 문서를 담고 있는 배열이며, 두 번째 문서에는

  4. MongoDB에서 _id를 기준으로 컬렉션 문서 업데이트하는 방법

    MongoDB에서 _id로 문서 업데이트하기MongoDB에서 특정 _id를 기준으로 문서를 업데이트하려면 $set 연산자를 사용합니다. 이 글에서는 실제 예제를 통해 단계별로 업데이트 과정을 살펴보겠습니다.1단계: 컬렉션 생성 및 문서 삽입먼저 예제에 사용할 컬렉션을 생성하고 문서를 삽입합니다.db.demo741.insertOne({SubjectName:MySQL}); { acknowledged : true, insertedId : ObjectId(5ead718657bb72a10bcf0672) } > db.dem

  5. MongoDB에서 배열의 모든 요소는 출력되지만 특정 요소를 가져올 수 없을 때? forEach() 활용법

    MongoDB에서 배열에 담긴 모든 값을 반복하며 출력하는 것은 어렵지 않지만, 그중 특정 요소만 골라내야 하는 경우에는 별도의 반복 처리가 필요합니다. 이럴 때 forEach() 메서드를 활용하면 원하는 값을 손쉽게 추출할 수 있습니다.1. 샘플 컬렉션 생성먼저 테스트용으로 사용할 문서가 포함된 컬렉션을 생성해 보겠습니다.> db.demo742.insertOne({ userDetails: [ { userName:Robert, CountryName:UK }, { userName:David, CountryName:AUS } ]}

  6. MongoDB에서 $$ROOT로 전체 컬렉션과 비교해 전체 문서 추출하는 방법

    MongoDB에서 컬렉션 전체와 비교하여 문서 전체를 추출하려면 $$ROOT 시스템 변수를 사용하면 됩니다. $$ROOT는 집계 파이프라인에서 현재 처리 중인 문서 전체를 그대로 참조할 수 있게 해주는 강력한 기능입니다.1. 샘플 컬렉션 생성하기먼저 데모용 컬렉션을 만들고 문서를 삽입해 보겠습니다.> db.demo743.insertOne({id:1,ShippingDate:2020-01-21,value:50}); { acknowledged : true, insertedId : ObjectId(5ead893a57bb

  7. MongoDB 임베디드 문서에서 특정 요소를 찾는 방법 ($unwind, $match, $project 활용)

    MongoDB에서 임베디드(내장) 문서 배열 안에 있는 특정 요소를 찾으려면 집계(aggregation) 파이프라인의 $project 연산자를 활용하면 됩니다. 이 글에서는 $unwind, $match, $project 세 단계를 조합하여 배열 내 조건에 맞는 요소만 추출하는 방법을 단계별로 살펴보겠습니다. 1. 샘플 컬렉션 생성하기 먼저 학생 정보를 담은 배열 필드 studentInformation을 포함하는 문서를 demo744 컬렉션에 삽입합니다. > db.demo744.insertOne( ... { ...

  8. MongoDB에서 $cond와 $concat으로 조건부 문자열 연결하기

    MongoDB에서 특정 조건을 만족하는 문서만 필터링하면서 두 개의 필드 값을 연결(concatenate)해야 하는 경우가 있습니다. 이럴 때 $redact 연산자와 함께 $cond(조건문)와 $concat(문자열 연결)을 조합하면 간단하게 해결할 수 있습니다.1. 샘플 컬렉션 생성먼저 데모용 컬렉션을 만들고 문서를 삽입해 보겠습니다.> db.demo745.insertOne({Value1:100,Value2:100}); { acknowledged : true, insertedId : ObjectId(5eae641

  9. MongoDB에서 현재 날짜보다 오래된 게시물 조회하는 방법 – $lte 연산자 활용하기

    MongoDB에서 현재 날짜보다 오래된 게시물을 찾으려면 $lte 연산자를 사용하면 됩니다. $lte는 less than or equal(작거나 같음)을 의미하는 비교 연산자로, 특정 날짜 이전에 저장된 문서를 조회할 때 매우 유용합니다.1. 예제 컬렉션 생성 및 데이터 삽입먼저 데모용 컬렉션을 만들고 DueDate 필드를 가진 문서들을 삽입해 보겠습니다.> db.demo746.insertOne({DueDate:new Date(2020-01-10)}); { acknowledged : true, insertedId

  10. MongoDB find()로 필드 값에서 '@email' 형태의 문자열 검색하기

    MongoDB에서 find() 메서드와 정규표현식(Regex)을 활용하면 필드 값 안에 포함된 특정 문자열을 손쉽게 검색할 수 있습니다. 이번 글에서는 @email처럼 특정 문자열이 포함된 문서를 찾는 방법을 실제 예제와 함께 단계별로 살펴보겠습니다.1. 샘플 데이터 생성하기먼저 insertOne() 메서드를 사용해 문서가 담긴 컬렉션을 생성합니다.> db.demo727.insertOne({UserId:"John@email.com"});{   "acknowledged&quo

  11. MongoDB에서 $lt 연산자로 특정 값보다 작은 가격의 문서 조회하는 방법

    MongoDB $lt 연산자 소개MongoDB에서 특정 값보다 작은 조건을 만족하는 문서를 조회하려면 $lt(less than) 비교 연산자를 사용하면 됩니다. 이 연산자는 find() 메서드와 함께 사용되어 필드 값이 지정한 기준값 미만인 문서만 필터링해 줍니다.아래 예제를 통해 실제 동작 과정을 단계별로 살펴보겠습니다.1. 컬렉션 생성 및 문서 삽입먼저 insertOne() 메서드를 사용하여 Price 필드를 가진 문서들을 demo728 컬렉션에 삽입합니다.> db.demo728.insertOne({Price:75}); {

  12. MongoDB에서 대량 삽입하기: insertMany() 메서드 활용법

    MongoDB에서 여러 개의 문서를 한 번에 컬렉션에 추가하려면 insertMany() 메서드를 사용하면 됩니다. insertMany()는 단일 작업으로 여러 문서를 컬렉션에 대량 삽입할 수 있어, 데이터를 효율적으로 처리할 때 매우 유용합니다.insertMany()로 컬렉션 생성 및 문서 삽입아래 예제는 은행 정보와 고객 정보를 담은 세 개의 문서를 demo729 컬렉션에 한 번에 삽입하는 코드입니다.> db.demo729.insertMany( [ ... { BankName:HDFC Bank,cardType:Credi

  13. MongoDB에서 특정 숫자보다 큰 필드 값을 가진 문서를 일치시키고 가져오는 방법

    MongoDB에서 특정 조건에 맞는 문서를 필터링하려면 $match 연산자를 사용합니다. 특정 숫자보다 큰 값을 찾으려면 $gt(greater than) 연산자를 함께 활용하면 됩니다.이 글에서는 실제 예제를 통해 컬렉션 생성부터 조건에 맞는 문서를 집계 파이프라인으로 조회하는 과정까지 단계별로 살펴보겠습니다.1. 컬렉션 생성 및 문서 삽입먼저 insertOne() 메서드를 사용하여 데모용 컬렉션에 문서를 생성합니다.> db.demo730.insertOne({Name : Chris, Marks : 33 }); { ackn

  14. MongoDB에서 $project를 활용해 배열의 특정 필드만 표시하고 나머지 필드는 제외하는 방법

    MongoDB에서 배열 안의 특정 필드만 결과로 표시하고 다른 필드는 제외하고 싶다면 $unwind와 $project를 함께 사용하면 됩니다. $project 단계에서 제외할 필드의 값을 0으로 설정하면 해당 필드는 최종 출력에서 생략됩니다.1. 예제 컬렉션 생성 및 문서 삽입먼저 실습에 사용할 컬렉션을 만들고 문서를 삽입해 보겠습니다.> db.demo731.insertOne({ ProductInformation: [ { ProductId:Product-1, ProductPrice:80 }, { ProductId:Product

  15. MongoDB 기존 문서에 목록·객체 타입 필드 추가하는 방법 – $set 연산자 활용 가이드

    $set 연산자로 필드 추가하기 기존 MongoDB 문서에 특정 데이터 유형(목록, 객체)을 가진 필드를 추가할 때는 $set 연산자를 사용하면 됩니다. 먼저 예제용 컬렉션에 문서를 생성해 보겠습니다. > db.demo732.insertOne({_id:1,Language:English}); { acknowledged : true, insertedId : 1 } > db.demo732.insertOne({_id:2,Language:Hindi}); { acknowledged : true, insertedId : 2 } 컬렉

  16. MongoDB에서 내장 문서 배열을 상위 레벨로 이동하고 집계 파이프라인으로 키/값 변환하기

    MongoDB 집계 파이프라인에서 $replaceRoot 단계를 사용하면 배열 형태로 저장된 내장 문서(임베디드 도큐먼트)의 필드들을 상위 레벨로 끌어올리고, 동시에 키/값 구조를 원하는 형태로 변환할 수 있습니다.$replaceRoot는 입력 문서 전체를 지정한 새 문서로 대체하는 역할을 합니다. 이때 _id 필드를 포함한 기존의 모든 필드가 새 문서의 내용으로 교체되므로, 기존 필드를 유지하고 싶다면 반드시 새 루트 문서에 명시적으로 포함시켜야 합니다.샘플 데이터 생성하기먼저 데모용 컬렉션을 만들고 문서를 삽입해 보겠습니다.&g

  17. MongoDB에서 현재 시간과 특정 날짜 간의 차이 구하는 방법

    MongoDB에서 현재 시간(now)과 특정 날짜 사이의 차이를 계산하려면 aggregate() 메서드를 사용하면 됩니다. 핵심 아이디어는 $subtract 연산자로 두 날짜의 차이를 밀리초 단위로 구한 뒤, 이 값을 하루에 해당하는 밀리초(1000 × 60 × 60 × 24)로 나누어 일 단위로 변환하는 것입니다.1. 샘플 데이터 준비먼저 문서가 포함된 컬렉션을 생성해 보겠습니다.> db.demo734.insertOne({GivenDate:new ISODate("2020-01-10")}); {  

  18. MongoDB updateOne()과 insertOne() 사용법 완벽 정리

    MongoDB에서 insertOne()은 컬렉션에 새로운 문서를 하나 삽입하는 메서드이고, updateOne()은 쿼리 필터(query filter)를 기준으로 조건에 일치하는 단일 문서만 수정하는 메서드입니다. 이 글에서는 두 메서드의 동작 방식을 실제 예제와 함께 살펴보겠습니다.1. 샘플 컬렉션 생성하기먼저 insertOne()을 사용하여 demo735라는 컬렉션에 문서 4개를 순차적으로 삽입해 보겠습니다.> db.demo735.insertOne({id:1,Name:Chris}); { acknowledged : tr

  19. MongoDB에서 aggregate()를 활용해 3단계로 중첩된 문서 배열 쿼리 필터링하기

    MongoDB에서 여러 단계로 중첩된(embedded) 문서 배열을 필터링하려면 aggregate() 메서드를 사용하는 것이 가장 효과적입니다. 이 글에서는 3단계로 깊이 중첩된 배열 구조에서 특정 조건에 맞는 문서만 추출하는 방법을 단계별로 살펴보겠습니다. 1. 샘플 컬렉션 생성 먼저 실습에 사용할 컬렉션을 만들고 문서를 삽입합니다. 아래 예제는 details1 → details2 → details3로 이어지는 3단계 중첩 구조를 가진 문서 두 개를 생성합니다. > db.demo736.insertOne( ... {

  20. MongoDB에서 특정 필드가 없는 문서를 조회하는 방법

    MongoDB에서 배열 내부 요소처럼 특정 필드가 존재하지 않는 문서만 골라내야 하는 경우가 종종 있습니다. 이럴 때 $exists 연산자를 활용하면 해당 필드의 존재 여부를 손쉽게 확인할 수 있으며, 조건과 일치하는 문서를 find() 또는 애그리게이션 파이프라인으로 조회할 수 있습니다.1. 테스트용 컬렉션 생성하기먼저 예제로 사용할 컬렉션을 만들고 문서를 삽입해 보겠습니다. 아래 예시에서는 Info 배열 안의 일부 객체에 Age 필드가 없도록 구성했습니다.> db.demo612.insertOne({id:1,Info:[{Na

Total 1351 -컴퓨터  FirstPage PreviousPage NextPage LastPage CurrentPage:2/68  20-컴퓨터/Page Goto:1 2 3 4 5 6 7 8