Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /

$encStrNormalizedEq (operador de expresión)

Nuevo en la versión 8.2.

Nota

La $encStrNormalizedEq el operador de agregación es solo para campos cifrados en colecciones con Queryable Encryption enabled. Para campos no cifrados, usa operadores Text búsqueda para hacer coincidir subcadenas.

$encStrNormalizedEq

Devuelve true si un valor string normalizado coincide con la versión string normalizada del string especificado. El campo de query debe tener queries de subcadenas habilitadas, y la longitud del string del query debe estar entre el número mínimo y máximo de caracteres configurados, inclusive.

Nota

Este operador debe operar sobre un índice de búsqueda de texto.

La expresión $encStrNormalizedEq tiene la siguiente sintaxis de expresión de operador:

{ $encStrNormalizedEq: { input: ’$fieldname’, string<target search key> } }
  • La distinción entre mayúsculas y minúsculas y la sensibilidad a los signos diacríticos están determinadas por la configuración del índice de búsqueda de texto asociado.

  • Las búsquedas coinciden con caracteres de espacio en blanco.

  • Los saltos de línea no se consideran al hacer coincidencias.

  • Los delimitadores de tokenización no son compatibles.

Considera el carácter é, que puede representarse de dos formas:

  • Un punto de código, U+00E9 (letra e minúscula latina con acento agudo)

  • Dos puntos de código, U+0065 (letra minúscula e latina) seguidos por U+0301 (acento agudo combinante)

Al comparar estas dos representaciones diferentes del nombre Béatrice:

  • El uso de $eq se evalúa como false, porque las representaciones binarias son diferentes.

  • Usar $encStrNormalizedEq evalúa en true, independientemente de la configuración de diacriticSensitive, porque el operador normaliza ambas cadenas antes de compararlas.

En:mongosh

db.collection('MyCollection').aggregate([
{
$match: {
$expr: {
$encStrNormalizedEq: {
input: '$employeeLastName',
string: 'Béatrice'
}
}
}
}
])

Volver

$encStrEndsWith

En esta página