redis数据类型

5种类型的数据

登陆 redis

redis-cli -h ip -p port -a password

string

127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> set name "xuepeng"
OK
127.0.0.1:6379> get name
"xuepeng"

在这里插入图片描述

127.0.0.1:6379> config set stop-writes-on-bgsave-error no
OK
127.0.0.1:6379> mset key1 1 key2 'a' key3 'linux'
OK
127.0.0.1:6379> mget name key1 key2 key3
1) "xuepeng"
2) "1"
3) "a"
4) "linux"

list

list 是一个链表结构,主要功能是 push,pop,获取一个范围所有值等等。操作中key为链表名,list用于消息队列。

127.0.0.1:6379> LPUSH list 1 2 3 4 5
(integer) 5
127.0.0.1:6379> LRANGE list 0 -1 //读取整个 list
1) "5"
2) "4"
3) "3"
4) "2"
5) "1"
127.0.0.1:6379> LPOP list  // 取出最后插入的元素
"5"
127.0.0.1:6379> RPOP list  //取出最开始插入的元素
"1"
127.0.0.1:6379> LRANGE list 0 -1
1) "4"
2) "3"
3) "2"

set

127.0.0.1:6379> SADD set1 a b c  //元素a,b,c放入集合set1中
127.0.0.1:6379> SADD set1 d      //元素d放入集合set1中
127.0.0.1:6379> SMEMBERS set1 //查看集合set1中的所有元素
127.0.0.1:6379> srem set1 c   //从集合set1中删除元素c
127.0.0.1:6379> SADD set2 a b  //元素a,b 放入集合set2中
127.0.0.1:6379> SINTER set1 set2 //集合set1,set2的交集
127.0.0.1:6379> SUNION set1 set2 //集合set1,set2的并集
127.0.0.1:6379> SDIFF set1 set2 //在集合set1中,挑出与集合set2不同的元素
127.0.0.1:6379> SDIFF set2 set1 //在集合set2中,挑出与集体set1不同的元素

zset (sorted set)

sorted set 是有序集合,它比set多了一个权重参数sorce,使得集合中的元素能够按 score 进行有序排序

127.0.0.1:6379> ZADD set3 89 'zhangsan'
(integer) 1
127.0.0.1:6379> ZADD set3 99 'lisi'
(integer) 1
127.0.0.1:6379> ZADD set3 108 'wangwu'
(integer) 1
127.0.0.1:6379> ZADD set3 79 'zhaoliu'
(integer) 1
127.0.0.1:6379> ZRANGE set3 0 -1  //从小到大排序
1) "zhaoliu"
2) "zhangsan"
3) "lisi"
4) "wangwu"
127.0.0.1:6379> ZREVRANGE set3 0 -1 //从大到小排序
1) "wangwu"
2) "lisi"
3) "zhangsan"
4) "zhaoliu"

hash

其实,hash可以认为是多维度string

127.0.0.1:6379> hset hash1 name jack
(integer) 1
127.0.0.1:6379> HSET hash1 age 36
(integer) 1
127.0.0.1:6379> HGET hash1 name
"jack"
127.0.0.1:6379> HGETALL hash1
1) "name"
2) "jack"
3) "age"
4) "36"
127.0.0.1:6379> HSET hash2 a 1 b 2 c 3
(integer) 3
127.0.0.1:6379> HGETALL hash2
1) "a"
2) "1"
3) "b"
4) "2"
5) "c"
6) "3"
127.0.0.1:6379> HGET hash2 a
"1"

Redis常见操作

  1. keys *
    取出所有 key

  2. keys k*
    模糊匹配

  3. exists key1
    有 key1 键,返回1,否则返回0

  4. del key1
    删除一个key,成功返回1,否则返回0

  5. expire key1 200
    设置键的过期时间为200s

  6. ttl key
    查看键还有多久过期,当key不存在时返回-2,没有设置过期时间返回-1

  7. select 0
    代表当前数据库,默认为0数据库,数据库[0-15]

  8. move set1 1
    把键set1移动到1库

  9. persist key1
    取消 key1的过期时间

  10. randomkey
    随机返回一个key

  11. rename old_key new_key
    重命令key

  12. type key1
    返回键的类型

  13. dbsize

  14. info

  15. flushdb

  16. flushall

  17. bgsave

  18. save

  19. config get *

  20. config get dir

  21. config set dir

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值