本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
JSON.MGET
取得多個文件索引鍵的路徑上序列化 JSON。這會針對不存在的索引鍵或 JSON 路徑,傳回 null。
語法
JSON.MGET <key> [key ...] <path>
金鑰 (必要) – 文件類型的一或多個 Valkey 或 Redis OSS 金鑰。
path (必要) – JSON 路徑。
傳回
大量字串陣列。陣列的大小等於命令中的索引鍵數量。陣列的每個元素都填入 (a) 路徑定位的序列化 JSON,或 (b) 如果沒有索引鍵、文件中沒有路徑,或路徑無效 (語法錯誤),則為 null。
-
如果有任何指定的索引鍵,且不是 JSON 索引鍵,命令會傳回
WRONGTYPE
錯誤。
範例
增強型路徑語法:
127.0.0.1:6379> JSON.SET k1 . '{"address":{"street":"21 2nd Street","city":"New York","state":"NY","zipcode":"10021"}}' OK 127.0.0.1:6379> JSON.SET k2 . '{"address":{"street":"5 main Street","city":"Boston","state":"MA","zipcode":"02101"}}' OK 127.0.0.1:6379> JSON.SET k3 . '{"address":{"street":"100 Park Ave","city":"Seattle","state":"WA","zipcode":"98102"}}' OK 127.0.0.1:6379> JSON.MGET k1 k2 k3 $.address.city 1) "[\"New York\"]" 2) "[\"Boston\"]" 3) "[\"Seattle\"]"
受限路徑語法:
127.0.0.1:6379> JSON.SET k1 . '{"address":{"street":"21 2nd Street","city":"New York","state":"NY","zipcode":"10021"}}' OK 127.0.0.1:6379> JSON.SET k2 . '{"address":{"street":"5 main Street","city":"Boston","state":"MA","zipcode":"02101"}}' OK 127.0.0.1:6379> JSON.SET k3 . '{"address":{"street":"100 Park Ave","city":"Seattle","state":"WA","zipcode":"98102"}}' OK 127.0.0.1:6379> JSON.MGET k1 k2 k3 .address.city 1) "\"New York\"" 2) "\"Seattle\"" 3) "\"Seattle\""