JSON.ARRINDEX - Amazon ElastiCache

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

JSON.ARRINDEX

Pesquisa a primeira ocorrência de um JSON valor escalar nas matrizes do caminho.

  • Erros fora do intervalo são tratados arredondando o índice para o início e o fim da matriz.

  • Se início > fim, retorna -1 (não encontrado).

Sintaxe

JSON.ARRINDEX <key> <path> <json-scalar> [start [end]]
  • chave (obrigatória) — Uma chave Valkey ou Redis do OSS tipo JSON documento.

  • caminho (obrigatório) — Um JSON caminho.

  • json-scalar (obrigatório) - O valor escalar a ser pesquisado. JSONescalar se refere a valores que não são objetos ou matrizes. Ou seja, sstring, número, bbooleano, e nulo são valores escalares.

  • início (opcional) - O índice inicial, inclusive. Assumirá o padrão de 0 se não for fornecido.

  • fim (opcional) - O índice final, exclusivo. Assumirá o padrão de 0 se não for fornecido, o que significa que o último elemento está incluído. 0 ou -1 significa que o último elemento está incluído.

Return

Se o caminho for uma sintaxe aprimorada:

  • Matriz de números inteiros. Cada valor é o índice do elemento correspondente na matriz no caminho. O valor é -1, se não encontrado.

  • Se um valor não for uma matriz, seu valor de retorno correspondente será nulo.

Se o caminho for uma sintaxe restrita:

  • Inteiro, o índice do elemento correspondente ou -1 se não for encontrado.

  • Erro WRONGTYPE se o valor no caminho não for uma matriz.

Exemplos

Sintaxe do caminho aprimorada:

127.0.0.1:6379> JSON.SET k1 . '[[], ["a"], ["a", "b"], ["a", "b", "c"]]' OK 127.0.0.1:6379> JSON.ARRINDEX k1 $[*] '"b"' 1) (integer) -1 2) (integer) -1 3) (integer) 1 4) (integer) 1

Sintaxe do caminho restrita:

127.0.0.1:6379> JSON.SET k1 . '{"children": ["John", "Jack", "Tom", "Bob", "Mike"]}' OK 127.0.0.1:6379> JSON.ARRINDEX k1 .children '"Tom"' (integer) 2