MongoDB에서 LIKE 검색 구현하기관계형 데이터베이스의 SQL LIKE 절과 유사한 기능을 MongoDB에서 구현하려면 정규식(Regular Expression)을 활용하면 됩니다. MongoDB는 슬래시(/)로 감싼 정규식 패턴 또는 $regex 연산자를 통해 문자열의 부분 일치 검색을 손쉽게 지원합니다.기본 문법은 다음과 같습니다:db.yourCollectionName.find({ yourFieldName: /.*yourMatchingValue.*/ }).pretty();여기서 /.*값.*/ 패턴은 해당 필드에 특정 값이
MongoDB 컬렉션에서 모든 키 이름 가져오기MongoDB는 스키마가 고정되어 있지 않은 NoSQL 데이터베이스이기 때문에, 문서마다 서로 다른 필드를 가질 수 있습니다. 따라서 특정 컬렉션에 어떤 키(필드)들이 존재하는지 확인하고 싶을 때가 있습니다. 이 글에서는 findOne() 메서드와 JavaScript for...in 반복문을 활용해 컬렉션의 모든 키 이름을 출력하는 방법을 알아보겠습니다.기본 문법컬렉션의 모든 키 이름을 가져오는 기본 문법은 다음과 같습니다.var yourVariableName1 = db.yourColl
MongoDB에서는 $where 연산자와 find() 메서드를 함께 사용하면 두 필드의 값을 서로 비교할 수 있습니다. 일반적인 쿼리 연산자로는 필드와 고정된 값만 비교할 수 있지만, $where를 사용하면 같은 문서 내의 필드끼리 비교하는 조건을 자바스크립트 표현식으로 작성할 수 있습니다.기본 문법db.컬렉션명.find({$where:조건식}).pretty();예제 컬렉션 생성하기문법을 이해하기 위해 몇 개의 문서가 담긴 컬렉션을 먼저 만들어 보겠습니다. 아래 쿼리는 compareTwoFields라는 컬렉션에 세 개의 문서를 삽입
MongoDB 컬렉션에서 무작위(랜덤) 문서를 하나 가져오고 싶다면 aggregate() 함수와 $sample 파이프라인 단계를 활용하면 됩니다. 이 방법은 별도의 복잡한 로직 없이 간단한 쿼리 한 줄로 랜덤 데이터를 추출할 수 있어 매우 유용합니다.$sample을 사용한 기본 문법MongoDB에서 임의의 레코드를 가져오는 기본 문법은 다음과 같습니다.db.yourCollectionName.aggregate([{$sample:{size:1}}]);여기서 size 값은 추출하고자 하는 문서의 개수를 의미합니다. 1로 설정하면 컬렉션에
MongoDB에서 하위 문서(subdocument) 내부의 배열을 조건에 맞게 필터링하려면 집계 파이프라인(aggregate)을 활용하는 것이 효과적입니다. 핵심 아이디어는 $unwind 연산자로 배열을 개별 문서로 펼친 후, $match로 원하는 조건을 걸고, 마지막에 $group으로 다시 묶어주는 것입니다.1. 테스트용 컬렉션 생성하기먼저 개념을 이해하기 위해 샘플 문서가 담긴 컬렉션을 생성해 보겠습니다. 아래 쿼리를 실행하면 배열 형태의 하위 문서를 포함한 컬렉션이 만들어집니다.> db.filterArray.insertO
MongoDB에서 문서 배열의 객체를 업데이트하는 방법MongoDB에서 문서(document) 내부에 포함된 배열(array)의 객체를 수정하려면 update() 메서드를 사용해야 합니다. 특히 위치 연산자(positional operator)인 $와 함께 사용하면, 조건에 일치하는 특정 배열 요소만 정확하게 업데이트할 수 있습니다.update() 메서드의 동작을 이해하기 위해 먼저 샘플 컬렉션과 문서를 생성해 보겠습니다.1. 테스트용 컬렉션 생성다음 쿼리는 고객 정보와 아이템 상세 내역을 담은 문서를 삽입합니다.> db.up
MongoDB에서 배열 필드에 저장된 요소 개수가 1보다 많은 문서만 골라내고 싶다면 $where 연산자와 자바스크립트의 length 속성을 함께 사용하면 됩니다. 이 글에서는 실제 예제를 통해 배열 크기를 기준으로 문서를 조회하는 방법을 단계별로 살펴보겠습니다.기본 문법배열 크기가 1보다 큰 문서를 조회하려면 아래와 같이 쿼리를 작성합니다.db.yourCollectionName.find({$where:this.yourArrayDocumentName.length > 1}).pretty();예제용 컬렉션 만들기문법을 이해하기 위
MongoDB에서 새 데이터베이스 생성하는 방법MongoDB에서 새 데이터베이스를 만들 때는 use 명령어를 사용합니다. 기본 문법은 다음과 같습니다.use yourDatabaseName;위 문법을 실행하면 MongoDB에 새 데이터베이스가 생성됩니다. 만약 같은 이름의 데이터베이스가 이미 존재한다면, 해당 데이터베이스로 전환만 됩니다.여기서는 예시로 sample이라는 이름의 데이터베이스를 만들어 보겠습니다.1. use 명령어로 데이터베이스 생성 및 전환> use sample;switched to db sample2. 현재 작
MongoDB에서 데이터베이스를 삭제하려면 dropDatabase() 메서드를 사용해야 합니다. 기본 문법은 다음과 같습니다.db.dropDatabase()위 명령어는 현재 작업 중인 데이터베이스를 삭제합니다. 만약 별도의 데이터베이스를 선택하지 않은 상태라면 기본 데이터베이스(test)가 삭제되므로 주의해야 합니다.1단계: 전체 데이터베이스 목록 확인데이터베이스를 삭제하기 전에 먼저 show dbs 명령어로 현재 존재하는 모든 데이터베이스 목록을 확인하는 것이 좋습니다.> show dbs;실행 결과는 다음과 같습니다.admi
MongoDB에서 새 컬렉션 생성하기MongoDB에서 새로운 컬렉션(Collection)을 생성하려면 createCollection() 메서드를 사용해야 합니다. 이 메서드는 기본 문법과 옵션을 포함한 확장 문법 두 가지 방식으로 활용할 수 있습니다.기본 문법가장 간단하게 새 컬렉션을 만드는 기본 문법은 다음과 같습니다:db.createCollection(yourNewCollectionName);옵션을 포함한 문법컬렉션의 동작 방식을 세부적으로 제어하고 싶다면 두 번째 매개변수로 옵션 객체를 전달할 수 있습니다:db.createCo
MongoDB 컬렉션 삭제 기본 문법MongoDB에서 컬렉션(collection)을 삭제하려면 drop() 명령어를 사용합니다. 기본 문법은 다음과 같습니다.db.yourCollectionName.drop();이 명령어는 실행 결과로 true 또는 false를 반환합니다. 컬렉션이 성공적으로 삭제되면 true를, 실패하면 false를 반환합니다.1단계: 데이터베이스 전환하기먼저 MongoDB에 존재하는 모든 컬렉션 목록을 확인해 보겠습니다. 여기서는 여러 개의 컬렉션을 포함하고 있는 sample 데이터베이스를 예로 들겠습니다. 먼저
MongoDB에서 새 문서 삽입하기MongoDB 컬렉션(Collection)에 새로운 문서(Document)를 삽입하려면 insert() 메서드 또는 save() 메서드를 사용하면 됩니다. 두 가지 방법을 각각 살펴보겠습니다.방법 1: insert() 메서드 사용insert() 메서드의 기본 문법은 다음과 같습니다.db.yourCollectionName.insert(yourDocument);방법 2: save() 메서드 사용save() 메서드의 기본 문법은 다음과 같습니다.db.yourCollectionName.save(yourDo
MongoDB에서 컬렉션(collection)에 저장된 기존 문서(document)를 업데이트하거나 수정하려면 update() 메서드를 사용해야 합니다. 기본 문법은 다음과 같습니다.db.yourCollectionName.update(yourExistingValue, yourUpdatedValue);첫 번째 인자에는 변경할 대상을 찾기 위한 조건을, 두 번째 인자에는 적용할 변경 내용을 지정합니다.컬렉션 생성 및 문서 삽입먼저 updateInformation이라는 이름의 컬렉션을 만들어 보겠습니다. MongoDB는 별도의 컬렉션 생
MongoDB 컬렉션에서 문서를 삭제하는 방법 MongoDB에서 컬렉션(collection)에 저장된 문서(document)를 삭제하려면 remove() 메서드를 사용합니다. 기본 문법은 다음과 같습니다. db.yourCollectionName.remove(yourDeleteValue); 이번 글에서는 실제 예제를 통해 단일 문서 삭제와 전체 문서 삭제 방법을 단계별로 살펴보겠습니다. 1단계: 샘플 컬렉션 생성하기 먼저 실습용으로 여러 개의 문서가 담긴 컬렉션을 만들어 보겠습니다. 아래 쿼리를 순서대로 실행합니다. > db.
MongoDB에서 컬렉션의 특정 문서 하나를 삭제하려면 deleteOne() 메서드를 사용하면 됩니다. 이 메서드는 조건에 일치하는 문서가 여러 개 있더라도 가장 먼저 발견된 단 하나의 문서만 삭제한다는 점이 특징입니다.1. 테스트용 컬렉션 생성 및 데이터 삽입먼저 실습을 위해 컬렉션을 생성하고 몇 개의 문서를 삽입해 보겠습니다.> db.deleteDocumentsDemo.insert({Name:Larry,Age:23}); WriteResult({ nInserted : 1 }) > db.deleteDocumentsDemo
MongoDB에서 deleteMany()로 컬렉션의 모든 문서 삭제하기MongoDB 컬렉션에 저장된 모든 문서를 한 번에 삭제하고 싶다면 deleteMany() 메서드를 사용하면 됩니다. 이 메서드에 빈 조건 객체({})를 전달하면 필터 조건 없이 컬렉션 내의 모든 문서가 삭제됩니다.실제 동작 과정을 이해하기 위해, 먼저 컬렉션을 생성하고 몇 개의 문서를 삽입한 뒤 삭제하는 전체 흐름을 단계별로 살펴보겠습니다.1단계: 컬렉션 생성 및 문서 삽입먼저 deleteDocumentsDemo라는 컬렉션을 만들고 세 개의 문서를 삽입합니다:&
MongoDB에서 컬렉션의 문서를 조회하는 기본 방법MongoDB의 컬렉션(Collection)에 저장된 문서(Document)를 조회하려면 find() 메서드를 사용합니다. 기본 문법은 다음과 같습니다.db.yourCollectionName.find();위 문법을 실행하면 해당 컬렉션에 있는 모든 문서가 반환됩니다. 실제 동작을 이해하기 위해 먼저 샘플 데이터가 담긴 컬렉션을 만들어 보겠습니다.1. 테스트용 컬렉션 생성 및 데이터 삽입insertOne() 메서드를 사용해 학생 정보 문서를 하나씩 삽입합니다.> db.retri
Python에서 pymongo 라이브러리를 사용하면 MongoDB 데이터베이스에 손쉽게 연결하여 문서를 삽입, 수정, 삭제할 수 있습니다. 특히 pymongo는 Python의 datetime 객체를 기본적으로 지원하기 때문에, 날짜를 저장하기 위해 별도의 변환 작업을 할 필요가 없습니다.기본 예제 코드아래 예제는 MongoDB에 연결한 후, 현재 UTC 시간을 담은 문서를 컬렉션에 삽입하는 과정을 보여줍니다.from pymongo import MongoClient import datetime # 기본 포트와 호스트로 MongoDB
Python에서 pymongo 라이브러리를 사용하면 MongoDB 데이터베이스에 손쉽게 연결하여 객체를 삽입(insert), 수정(update), 삭제(delete)할 수 있습니다. 특히 PyMongo는 Python의 datetime 객체를 기본적으로 지원하기 때문에, 날짜 데이터를 MongoDB에 저장할 때 별도의 변환 작업 없이 그대로 사용할 수 있다는 점이 큰 장점입니다.예제 코드아래 예제는 MongoDB에 연결한 후, 현재 UTC 시간을 담은 문서를 컬렉션에 삽입하는 기본적인 방법을 보여줍니다.from pymongo impo
오픈 소스 데이터베이스는 소스 코드가 공개되어 있어 누구나 코드를 열람하고 학습할 수 있으며, 필요에 따라 직접 수정까지 가능한 데이터베이스를 말합니다. 오픈 소스 데이터베이스는 크게 관계형(SQL)과 비관계형(NoSQL) 두 가지 유형으로 나뉩니다.오픈 소스 데이터베이스를 사용해야 하는 이유기업 입장에서 데이터베이스를 구축하고 유지 관리하는 비용은 상당히 높습니다. 전체 소프트웨어 지출 중 상당 부분이 데이터베이스 운영에 투입되기 때문입니다. 따라서 비용이 저렴한 오픈 소스 데이터베이스로 전환하는 것이 합리적인 선택이 될 수 있으