$strLenBytes (Comprimento em Bytes)

Última atualização: 2026-10-09

$strLenBytes (Comprimento em Bytes)

$strLenBytes retorna o comprimento em bytes UTF-8 de uma string — essencial para estimativa de armazenamento e limites de tamanho de campo. Para ASCII puro, bytes equivalem a caracteres; o chinês ocupa 3 bytes por caractere e emoji geralmente 4. Aceita apenas strings; outros tipos geram erro, então converta com $toString antes. Os resultados podem diferir do $strLenCP baseado em code points.

CategoriaString
Versão do MongoDB1.0+
Idioma do Exemplomongosh (Shell)

📝 Sintaxe

{ $strLenBytes: <expressão de string> }

⚙️ Parâmetros

stringObrigatório; a expressão de string a medir.

Retorno:O comprimento em bytes UTF-8 como inteiro.

▶ Exemplo

Execute os comandos abaixo no seu mongosh local (requer um mongod em execução):

// $strLenBytes: tamanho em bytes dos títulos de artigos
db.articles.aggregate([
  { $project: { sizeBytes: { $strLenBytes: '$title' } } }
])

Saída:

{ "_id": 1, "sizeBytes": 42 }
{ "_id": 2, "sizeBytes": 36 }

📌 Notas

Mais casos práticos em breve.

📚 Tutoriais Relacionados

❓ Perguntas Frequentes

QQuantos bytes tem um caractere chinês?
A3 bytes em UTF-8.
QQuando difere de $strLenCP?
ACom chinês ou emoji eles diferem; ASCII puro coincide.
QPode impor limites de tamanho de campo?
ASim — combine com $match para filtrar registros acima do limite.
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%