O Firestore não cria índices compostos automaticamente, como faria para os índices de campo único, devido ao grande número de combinações de campos possíveis. Em vez disso, ele ajuda a identificar e criar os índices compostos necessários à medida que você cria seu app.
Se você fizer a consulta acima sem antes criar o índice necessário, o Firestore retornará uma mensagem de erro com um link que pode ser acessado para criar o índice ausente. Isso acontecerá sempre que você fizer uma consulta que não for compatível com um índice. Também é possível criar e gerenciar índices compostos manualmente usando o console ou a Firebase CLI. Para mais informações sobre esses processos, consulte Como gerenciar índices.
A configuração de índices compostos e de campo único é feita de maneira diferente, mas ambos exigem que você configure modos de índice e escopos de consulta para seus índices.
Ao definir um índice, você seleciona um modo de índice para cada campo indexado. O modo de índice de cada campo é compatível com cláusulas de consulta específicas nesse campo. É possível selecionar os seguintes modos de índice:
Crescente arrow_upward Aceita as cláusulas de consulta <, <=, ==, >=, > e in no campo e aceita classificar os resultados em ordem crescente com base no valor desse campo.