$substr - Amazon DocumentDB

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

$substr

Amazon DocumentDB의 $substr 연산자는 지정된 문자열에서 하위 문자열을 추출하는 데 사용됩니다. 이는 바이트 범위가 아닌 문자 범위를 기반으로 하위 문자열을 정의해야 하는 경우에 특히 유용합니다. 이는 문자를 나타내는 데 사용되는 바이트 수가 다를 수 있는 유니코드 문자열을 처리할 때 특히 중요합니다.

파라미터

  • string: 하위 문자열을 추출할 입력 문자열입니다.

  • start: 추출할 하위 문자열의 시작 위치(0 기반)입니다. 음수가 아닌 정수 표현식일 수 있습니다.

  • length: 추출된 하위 문자열의 문자 수입니다. 음수가 아닌 정수 표현식일 수 있습니다.

예제(MongoDB 쉘)

이 예제에서는를 사용하여 직원의 사무실 위치에서 상태 약어를 추출$substr하는 방법을 보여줍니다.

샘플 문서 생성

db.people.insertMany([ { "_id": 1, "Desk": "Düsseldorf-NRW-021" }, { "_id": 2, "Desk": "Bremerhaven-HBB-32a" }, { "_id": 3, "Desk": "Norderstedt-SHH-892.50" }, { "_id": 4, "Desk": "Brandenburg-BBB-78" } ]);

쿼리 예제

db.people.aggregate([ { $project: { "state": { $substr: ["$Desk", 12, 3] } } } ])

출력

{ "_id": 1, "state": "NRW" }, { "_id": 2, "state": "HBB" }, { "_id": 3, "state": "SHH" }, { "_id": 4, "state": "BBB" }

코드 예제

$substr 명령을 사용하기 위한 코드 예제를 보려면 사용하려는 언어의 탭을 선택합니다.

Node.js
const { MongoClient } = require("mongodb"); async function example() { const client = await MongoClient.connect("mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false"); const db = client.db("test"); const collection = db.collection("people"); const result = await collection.aggregate([ { $project: { "state": { $substrCP: ["$Desk", 12, 3] } } } ]).toArray(); console.log(result); await client.close(); } example();
Python
from pymongo import MongoClient def example(): client = MongoClient("mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false") db = client["test"] collection = db["people"] result = list(collection.aggregate([ { "$project": { "state": { "$substrCP": ["$Desk", 12, 3] } } } ])) print(result) client.close() example()