redis的5种类型简介与操作

1. str类型

127.0.0.1:6379> set Name yeyu                   # 设置值
OK
127.0.0.1:6379> get Name                        # 获取值
"yeyu"
127.0.0.1:6379> mset Name yeyu Age 23           # 批量设置值
OK
127.0.0.1:6379> mget Name Age                   # 批量获取值
1) "yeyu"
2) "23"
127.0.0.1:6379> set name yeyu ex 10             # 设置值,且带过期时间
OK
127.0.0.1:6379> setnx name yeyu                 # key存在,不操作,不存在则创建。
(integer) 1
127.0.0.1:6379> setex name 10 yeyu              # key存在则覆盖,不存在则创建。且带过期时间
OK

 

2. list类型

list1 = ['bbb', 'ccc', 'ddd']

lpush list1 aaa                             # 从左边添加一个元素aaa
list1的结果:['aaa', 'bbb', 'ccc', 'ddd']

rpush list1 eee                             # 多右边添加一个元素eee
list1的结果:['aaa', 'bbb', 'ccc', 'ddd', 'eee']

同理:取出的时候也是分为左边取出和右边取出
lpop list1                                  # 结果是取出左边的值aaa
rpop list1                                  # 结果是取出右边的值eee

llen list1                                  # 查看列表长度
lindex list1 index                          # 根据索引查看值
lset list1 4 news                           # 根据索引修改值

LINSERT list1 before aaa 000                # 在aaa的值前面插入元素000

 

3. 集合类型

127.0.0.1: 6379 > SADD
set1 a
127.0.0.1: 6379 > SADD
set1 b
127.0.0.1: 6379 > SADD
set1 c
127.0.0.1: 6379 > SADD
set1 d

127.0.0.1: 6379 > SADD set2 a 2 b       # 同时加入多个元素

127.0.0.1: 6379 > SMEMBERS set1         # 查看集合
1) "d"
2) "b"
3) "a"
4) "c"
127.0.0.1: 6379 > SREM set1 c           # 删除元素,由于集合是无序的。只能删除元素
spop set1[count]                        # 随机取出元素,可带数量

127.0.0.1: 6379 > SINTER set1 set2      # 交集
127.0.0.1: 6379 > SUNION set1 set2      # 并集
127.0.0.1: 6379 > SDIFF set1 set2       # 差集

交集,并集,差集且形成新的集合
127.0.0.1: 6379 > SDIFFSTORE new_set01 set1 set2
127.0.0.1: 6379 > SINTERSTORE new_set02 set1 set2
127.0.0.1: 6379 > SUNIONSTORE new_set03 set1 set2

sismember seta a                        # 判断一个元素是否属于一个集合
srandmember seta                        # 随机取出一个元素,但不删除

 

4. 有序集合

zadd zset_a 11 123                      # 创建有序集合,score下标相同,则会覆盖。
zrange zset_a 0 - 1                     # 显示所有元素,按score顺序显示
zrange zset_a 0 - 1 withscores          # 可以带上分值

zrem zset_a 222                         # 删除指定元素
zremrangebyrank zset_a 0 2              # 删除范围0-2的元素,按score正向排序
zremrangebyscore zset_a 1 10            # 删除分值范围1-10的元素

zrank zset_a 222                        # 返回元素的索引值,索引值从0开始,按score正向排序
zrevrank zset_a 222                     # 同上,不同的是,按score反序排序
zrevrange zset_a 0 - 1                  # 反序显示所有元素

zcard zset_a                            # 返回集合中所有元素的个数
zcount zset_a 1 10                      # 返回分值范围1-10的元素个数
zrangebyscore zset_a 1 10               # 返回分值范围1-10的元素

 

5. hash类型,由多个str(keys:values)组成的一组元素

hset user1 name aming                   # 建立hash
hmset user2 name aming age 30 job it    # 批量建立键值对

hget user1 name                         # 查看单个key                       # 
hmget user2 name age job                # 查看多个key

hdel user2 job                          # 删除指定filed
hkeys user2                             # 打印所有的key
hvals user2                             # 打印所有的values
hlen user2                              # 查看hash有几个filed

 

【完】

posted on 2020-05-10 00:35  yeyu1314  阅读(186)  评论(0编辑  收藏  举报