$strcasecmp - Amazon DocumentDB

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

$strcasecmp

Amazon DocumentDB 中的$strcasecmp运算符在两个字符串之间执行不区分大小写的比较。它返回一个整数值,表示两个输入字符串的字典比较,忽略大小写差异。

参数

  • string1: 要比较的第一个字符串。

  • string2: 要比较的第二个字符串。

示例(MongoDB 外壳)

此示例演示如何使用$strcasecmp运算符比较people集合中的办公桌位置字符串,同时忽略大小写差异。

创建示例文档

db.people.insertMany([ { "_id": 1, "Desk": "mke233-wi" }, { "_id": 2, "Desk": "MKE233-WI" }, { "_id": 3, "Desk": "mke233-wi" } ]);

查询示例

db.people.aggregate([ { $project: { item: 1, compare: { $strcasecmp: ["$Desk", "mke233-wi"] } } } ]);

输出

{ "_id" : 1, "compare" : 0 } { "_id" : 2, "compare" : 0 } { "_id" : 3, "compare" : 0 }

输出显示,"Desk"字段和字符串之间的比较会"mke233-wi"返回0所有三个文档,这表明忽略大小写时,字符串相等。

代码示例

要查看使用该$strcasecmp命令的代码示例,请选择要使用的语言的选项卡:

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: { item: 1, compare: { $strcasecmp: ["$Desk", "mke233-wi"] } } } ]).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': { 'item': 1, 'compare': { '$strcasecmp': ['$Desk', 'mke233-wi'] } } } ])) print(result) client.close() example()