Redis SCAN 命令用于迭代数据库中的键。和其相似的命令有 SSCAN、HSCAN、ZSCAN,它们分别用于迭代集合、哈希散列与有序结合。
SCAN 命令是一个基于游标的迭代器,每次被调用之后,都会向用户返回一个新的游标,用户在下次迭代时需要使用这个新游标作为 SCAN 命令的游标参数,从而让迭代过程延续下,当游标返回 0 时,迭代结束。
SCAN 命令可用版本:>= 2.8.0
Redis SCAN 命令的基本语法如下:
SCAN cursor [MATCH pattern] [COUNT count]
参数说明:
SCAN 返回一个包含两个元素的数组, 第一个元素是用于进行下一次迭代的新游标, 而第二个元素则是一个数组, 这个数组中包含了所有被迭代的元素。
127.0.0.1:6379> scan 0 1) "2" #下一个迭代游标 2) 1) "name" 2) "www.cdsy.xyz" 3) "num" 4) "web_name" 5) "FANS" 6) "topic" 7) "user:id" 8) "url" 9) "user:uv:2021011308-09" 10) "website:name" 127.0.0.1:6379> scan 2 1) "0" #返回0表示迭代结束 2) 1) "course1" 2) "userid:1" 3) "title"