Funciones admitidas: 8.0

En las siguientes tablas se desglosan las funciones de MongoDB 8.0 compatibles con Firestore con compatibilidad con MongoDB. Para ver las diferencias en el comportamiento, consulta Diferencias en el comportamiento.

Operadores de consulta y proyección

Firestore con compatibilidad con MongoDB admite los siguientes operadores de consulta y proyección:

Operadores de matriz

Operador Compatible
$all
$elemMatch
$size

Operadores bit a bit

Operador Compatible
$bitsAllClear No
$bitsAllSet No
$bitsAnyClear No
$bitsAnySet No

Operador de comentarios

Operador Compatible
$comment No

Operadores de comparación

Operador Compatible
$eq
$gt
$gte
$in
$lt
$lte
$ne
$nin

Operadores de elementos

Operador Compatible
$exists
$type

Operadores de consulta de evaluación

Operador Compatible
$expr
$jsonSchema No
$mod
$regex
$text No
$where No

Operadores lógicos

Operador Compatible
$and
$nor
$not
$or

Operadores de proyección

Operador Compatible
$
$elemMatch
$meta No
$slice

Operadores de actualización

Firestore con compatibilidad con MongoDB admite los siguientes operadores de actualización.

Operadores de matriz

Operador Compatible
$
$[]
$[<identifier>]
$addToSet
$percentile
$pop
$pull
$pullAll
$push

Operadores bit a bit

Operador Compatible
$bit

Operadores de campo

Operador Compatible
$currentDate
$inc
$max
$min
$mul
$rename
$set
$setOnInsert
$unset

Actualizar modificadores

Modificador Compatible
$each
$position
$slice
$sort

Operadores de la cadena de agregación

Firestore con compatibilidad con MongoDB admite los siguientes operadores de la fase de agregación.

Acumuladores

Expresión Compatible
$accumulator No
$addToSet
$avg
$bottom No
$bottomN No
$count
$first
$firstN No
$last
$lastN No
$max
$maxN No
$median No
$mergeObjects
$min
$minN No
$percentile No
$push
$stdDevPop No
$stdDevSamp No
$sum
$top No
$topN No

Expresiones de acumulador

Expresión Compatible
$avg
$first
$last
$max
$median
$min
$percentile
$stdDevPop No
$stdDevSamp No
$sum

Operadores aritméticos

Limitaciones: Los operadores aritméticos no admiten valores decimal128.

Operador Compatible
$abs
$add
$ceil
$divide
$exp
$floor
$ln
$log
$log10
$mod
$multiply
$pow
$round
$sqrt
$subtract
$trunc

Operadores de matriz

Operador Compatible
$arrayElemAt
$arrayToObject
$concatArrays
$filter
$firstN
$in
$indexOfArray
$isArray
$lastN
$map
$maxN
$minN
$objectToArray
$range
$reduce
$reverseArray
$size
$slice
$sortArray
$zip

Operadores booleanos

Operador Compatible
$and
$not
$or

Operadores de comparación

Operador Compatible
$cmp
$eq
$gt
$gte
$lt
$lte
$ne

Operadores de expresiones condicionales

Operador Compatible
$cond
$ifNull
$switch

Operadores de tamaño de datos

Operador Compatible
$binarySize
$bsonSize

Operadores de fecha

Operador Compatible
$dateAdd
$dateDiff
$dateFromParts
$dateFromString
$dateSubtract
$dateToParts
$dateToString
$dateTrunc
$dayOfMonth
$dayOfWeek
$dayOfYear
$hour
$isoDayOfWeek
$isoWeek
$isoWeekYear
$millisecond
$minute
$month
$second
$toDate
$week
$year

Operadores de marcas de tiempo

Operador Compatible
$tsIncrement No
$tsSecond No

Operadores varios

Operador Compatible
$getField
$natural Sí (ascendente)
$rand No
$sampleRate No
$toHashedIndexKey No

Operadores de expresiones literales

Operador Compatible
$literal

Operadores de objetos

Operador Compatible
$mergeObjects
$objectToArray
$setField No

Operadores de conjuntos

Operador Compatible
$allElementsTrue
$anyElementTrue
$setDifference
$setEquals
$setIntersection
$setIsSubset
$setUnion

Operadores de fase

Operador Compatible
$addFields
$bucket
$bucketAuto No
$changeStreams No
$collStats No
$count
$currentOp No
$documents
$facet
$geoNear No
$graphLookup No
$group
$indexStats No
$limit
$listLocalSessions No
$listSessions No
$lookup
$match
$merge No
$out No
$planCacheStats No
$project
$redact No
$replaceRoot
$replaceWith
$sample No
$set
$search No
$setWindowFields No
$skip
$sort
$sortByCount
$unionWith
$unset
$unwind

Operadores de cadena

Operador Compatible
$concat
$dateFromString
$dateToString
$indexOfBytes
$indexOfCP
$ltrim
$regexFind
$regexFindAll
$regexMatch
$replaceAll
$replaceOne
$rtrim
$split
$strcasecmp
$strLenBytes
$strLenCP
$substr
$substrBytes
$substrCP
$toLower
$toString
$toUpper
$trim

Variables del sistema

Variable Compatible
$$CLUSTERTIME No
$$CURRENT No
$$DESCEND No
$$KEEP No
$$NOW Yes
$$PRUNE No
$$REMOVE Yes
$$ROOT

Operadores de texto

Operador Compatible
$meta No

Operadores trigonométricos

Operador Compatible
$acos No
$acosh No
$asin No
$asinh No
$atan No
$atan2 No
$atanh No
$cos No
$cosh No
$degreesToRadians No
$radiansToDegrees No
$sin No
$sinh No
$tan No
$tanh No

Operadores de tipo

Operador Compatible
$convert
$isNumber
$toBool
$toDate
$toDecimal
$toDouble
$toInt
$toLong
$toObjectId
$toString
$type

Operadores de variables

Operador Compatible
$let

Geoespacial

Firestore con compatibilidad con MongoDB admite los siguientes operadores geoespaciales.

Especificadores de geometría

Especificador Compatible
$box No
$center No
$centerSphere No
$geometry No
$maxDistance No
$minDistance No
$polygon No
$uniqueDocs No

Selectores de consultas

Selector Compatible
$geoIntersects No
$geoWithin No
$near No
$nearSphere No
$nearSphere No
$uniqueDocs No

Índices y propiedades de índice

Firestore con compatibilidad con MongoDB admite los siguientes índices y operadores de índice.

Índices

Tipo de índice Compatible
2 d No
2dsphere No
Multiusos
Cifrado con hash No
Multikey
Campo único
Texto No

Propiedades de índice

Propiedad Compatible
Fondo
No distingue entre mayúsculas y minúsculas No
Oculto No
Parcial No
Non-Sparse
Escaso
Texto No
TTL No
Identificador único
Carácter comodín No
Vector No

Comandos de bases de datos

Firestore con compatibilidad con MongoDB admite los siguientes comandos de base de datos.

Agregación

Comando Compatible
aggregate
count
distinct
group

No

La $group fase de las agregaciones se admite, pero no el comando de grupo.

mapReduce No

Autenticación

Comando Compatible
authenticate No
getnonce No
logout No

Operaciones de consulta y escritura

Comando Compatible
watch (Change Streams) No
delete
eval No
find
findAndModify
getLastError
getMore
getPrevError No
GridFS No
insert
parallelCollectionScan No
replaceOne

No

El método del controlador replaceOne se admite con el comando update.

resetError No
update

Comandos de sesión

Comando Compatible
abortTransaction
commitTransaction
endSessions
killAllSessions No
killAllSessionsByPattern No
killSessions No
refreshSessions No
startSession

Las sesiones se pueden iniciar con el método startSession del controlador.

Comandos administrativos

Firestore con compatibilidad con MongoDB admite los siguientes comandos administrativos.

Comando Compatible
cloneCollectionAsCapped No
collMod No
collMod: expireAfterSeconds No
convertToCapped No
copydb No
create
createIndex

Para crear índices, consulta Gestionar índices.

createIndexes

Para crear índices, consulta Gestionar índices.

createView No
currentOp No
drop No
dropDatabase

No

Para eliminar una base de datos, consulta Eliminar una base de datos.

dropIndex

Para eliminar índices, consulta Gestionar índices.

dropIndexes

No

filemd5 No
getAuditConfig No
killCursors
killOp No
listCollections
listDatabases
listIndexes
reIndex No
renameCollection No
setAuditConfig No

Comandos de diagnóstico

Comando Compatible
buildInfo
collStats No
connectionStatus
connPoolStats No
dataSize No
dbHash No
dbStats No
explain

Para obtener información sobre las diferencias de comportamiento y las limitaciones, consulta Explicación de consultas.

features No
hello
hostInfo
listCommands No
profiler No
serverStatus No
top No
whatsmyuri No

Comandos de gestión de roles

Para gestionar el acceso a la base de datos, Firestore con compatibilidad con MongoDB admite roles y permisos de Gestión de Identidades y Accesos.

Comando Compatible
createRole No
dropAllRolesFromDatabase No
dropRole No
grantRolesToRole No
revokePrivilegesFromRole No
revokeRolesFromRole No
rolesInfo No
updateRole No

Siguientes pasos