JSON.ARRINDEX - Amazon MemoryDB

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

JSON.ARRINDEX

Cari kemunculan pertama dari JSON nilai skalar dalam array di jalur.

  • Kesalahan di luar jangkauan diatasi dengan membulatkan indeks ke awal dan akhir array.

  • Jika awal > akhir, mengembalikan -1 (tidak ditemukan).

Sintaks

JSON.ARRINDEX <key> <path> <json-scalar> [start [end]]
  • kunci (wajib) — kunci jenis JSON dokumen

  • jalur (wajib) — JSON jalur

  • json-scalar (required) — nilai skalar untuk dicari; JSON skalar mengacu pada nilai yang bukan objek atau array. yaitu, String, number, boolean dan null adalah nilai skalar.

  • mulai (opsional) - indeks mulai, inklusif. Default ke 0 jika tidak disediakan.

  • akhir (opsional) - indeks akhir, eksklusif. Default ke 0 jika tidak disediakan, yang berarti elemen terakhir disertakan. 0 atau -1 berarti elemen terakhir disertakan.

Nilai yang ditampilkan

Jika jalur adalah sintaksis yang ditingkatkan:

  • Array integer. Setiap nilai adalah indeks dari elemen yang cocok dalam array di jalur. Nilainya -1 jika tidak ditemukan.

  • Jika nilai bukan array, nilai yang akan dikembalikan adalah kosong.

Jika jalur adalah sintaksis terbatas:

  • Integer, indeks elemen yang cocok, atau -1 jika tidak ditemukan.

  • Kesalahan WRONGTYPE jika nilai di jalur bukan array.

Contoh

Sintaksis jalur yang ditingkatkan:

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

Sintaksis jalur terbatas:

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