当前位置: 移动技术网 > IT编程>开发语言>Java > Redis Hash和List常用命令

Redis Hash和List常用命令

2020年03月25日  | 移动技术网IT编程  | 我要评论

redis hash和list常用命令

hash

1. hset 命令
127.0.0.1:6379> hset book history "story"
(integer) 1
2. hsetnx 命令:为哈希表不存在的域设值

使用 hsetnx 命令当且仅当域 field 不存在时,将哈希表 key 中的 field 的值设置为 value。如果 field 已经存在,那么 hsetnx 命令将会执行无效。

3. hmset 命令:设置多个域和值到哈希表中
4. hget 命令:获取哈希表中域的值
5. hgetall 命令:获取哈希表中所有的域和值
6. hmget 命令:获取多个域的值
127.0.0.1:6379> hget book history
"story"
127.0.0.1:6379> hgetall book
1) "history"
2) "story"
7. hkeys 命令:获取哈希表中的所有域
8. hvals 命令:获取哈希表中所有域的值
9. hlen 命令:统计哈希表中域的数量
127.0.0.1:6379> hlen book
(integer) 1
10. hstrlen 命令:统计域的值的字符串长度
11. hincrby 命令:为哈希表中的域加上增量值
12. hincrbyfloat 命令:为哈希表中的域加上浮点数增量值
13. hdel 命令:删除哈希表中的多个域
14. hexists 命令:判断哈希表中的域是否存在

list

1. lpush 命令:将多个值插入列表头部
2. rpush 命令:将多个值插入列表尾部
127.0.0.1:6379> lpush bookorder 12 13 15
(integer) 3
127.0.0.1:6379> rpush bookorder 100
(integer) 4
3. linsert 命令:插入一个值到列表中
127.0.0.1:6379> linsert bookorder before 3 200
(integer) -1
127.0.0.1:6379> linsert bookorder before 13 200
(integer) 5
4. lpushx 命令:将值插入列表头部

lpushx 命令用于将 value 值插入列表 key 的头部,此时 key 必须存在,并且是列表类型的。lpushx 命令与 lpush 命令相反,当 key 不存在时,lpushx 命令不会创建一个新的空列表,它什么也不做。

5. rpushx 命令:将值插入列表尾部
6. lset 命令:修改列表元素值
127.0.0.1:6379> lset bookorder 2 0
ok
7. llen 命令:统计列表的长度
8. lindex 命令:获取列表元素的值
9. lrange 命令:获取列表指定区间内的元素
127.0.0.1:6379> llen bookorder
(integer) 5
127.0.0.1:6379> lindex bookorder 2
"0"
127.0.0.1:6379> lrange bookorder 0 -1
1) "15"
2) "200"
3) "0"
4) "12"
5) "100"
10. lpop 命令:返回并删除列表的头元素
11. rpop 命令:返回并删除列表的尾元素
12. blpop 命令:在指定时间内删除列表的头元素(阻塞timeout后删除头元素)
blpop key timeout

返回值:如果在指定的 timeout 时间内没有返回任何元素,则将会返回 nil 和等待时长。而如果在 timeout 时间内返回一个列表,那么这个列表中的第一个元素表示被返回元素所属的 key,第二个元素表示被返回元素的值。

13. brpop 命令:在指定时间内删除列表的尾元素(阻塞,同上)
127.0.0.1:6379> lpop bookorder
"15"
127.0.0.1:6379> rpop bookorder
"100"
127.0.0.1:6379> lrange bookorder 0 -1
1) "200"
2) "0"
3) "12"
127.0.0.1:6379> blpop bookorder 15
1) "bookorder"
2) "200"
14. lrem 命令:删除指定个数的元素
lrem key count value

lrem 命令用于根据参数 count 的值,删除列表 key 中与指定参数 value 相等的元素。

● 当 count 等于 0 时,表示删除列表 key 中所有与 value 相等的元素。

● 当 count 大于 0 时,表示从列表 key 的表头开始向表尾搜索,删除与 value 相等的元素,删除的数量为 count 个。

● 当 count 小于 0 时,表示从列表 key 的表尾开始向表头搜索,删除与 value 相等的元素,删除的数量为 count 的绝对值个。

返回值:当列表 key 存在时,执行该命令后,返回被删除的元素数量。当列表 key 不存在时,就是一个空列表,该命令始终返回 0。

15. **ltrim 命令:留下指定区间的元素
127.0.0.1:6379> lrange bookorder 0 -1
1) "0"
2) "12"
127.0.0.1:6379> ltrim bookorder 0 0
ok
127.0.0.1:6379> lrange bookorder 0 -1
1) "0"
16. rpoplpush 命令:将列表元素移动到另一列表中
17. brpoplpush 命令:在指定时间内移动列表元素到另一列表中

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网