redis基本命令学习总结

个人学习笔记,谢绝转载!!!

原文:https://www.cnblogs.com/wshenjin/p/14156122.html


KEY 操作:

GET key                 #获取某个key,不存在则返回nil
DEL key                 #删除某个key
KEYS pattern            #查看符合正则的所有key
EXISTS key [key ...]    #判断某个key是否存在,可支持多个,返回存在的个数
EXPIRE key seconds      #刷新某个key过期时间
MOVE key db             #移动key到某个数据库

string:

redis中的整型也当作字符串处理


SET key value [EX seconds] [PX milliseconds] [NX|XX]  #设置key为指定的字符串值。
                                                      #参数:
                                                      #EX seconds, 设置键key的过期时间,单位时秒
                                                      #PX milliseconds, 设置键key的过期时间,单位时毫秒
                                                      #NX, 只有键key不存在的时候才会设置key的值
                                                      #XX, 只有键key存在的时候才会设置key的值

APPEND key value                                      #如果 key 存在且为字符串,就把 value 追加到原来值的结尾。 

APPEND key value                                      #如果 key 不存在,先创建一个空字符串的key,再执行追

GET key                                               #获取key值,不存在则返回nil

GETRANGE key start end                                #获取指定key索引start位置到end位置所对应的值,索引从0开始

GETSET key value                                      #设置新的key值,并获取设置之前的值,如果key不存在则设置,并返回nil

MGET key [key ...]                                    #批量获取key的值

MSET key value [key value ...]                        #批量设置key的值

DECR key                                              #数字类型的key自减操作

INCR key                                              #数字类型key自加操作

DECRBY key decrement                                  #数字类型key指定减少数值

INCRBY key increment                                  #数字类型key指定增加数值

STRLEN key                                            #获取key长度

list:

列表中的元素索引从0开始,倒数的元素可以用"-倒数"位置表示,如-2,代表倒数第二个元素,-1则代表最后一个元素。

List是简单的字符串列表,按照插入顺序排序。

一个列表最多可以包含 2∧32 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。

LPUSH key value [value ...]                          #从列表左边放入一个或者多个元素

LPUSHX key value                                     #当列表存在时,从左边放入一个元素

LPOP key                                             #从列表左边删除一个元素

RPUSH key value [value ...]                          #从列表右边放入一个或者多个元素

RPUSHX key value                                     #当列表存在时,从右边放入一个元素

RPOP key                                             #从列表右边删除一个元素

LSET key index value                                 #根据索引设置列表中元素的值,当list不存在时报错

LINDEX key index                                     #根据列表索引获取元素值

LINSERT key BEFORE|AFTER pivot value                 #在列表中,基于某个基准点插入值,pivot代表基准点

LLEN key                                             #获取列表长度

LRANGE key start stop                                #根据索引获取列表中的元素,列表索引最后一个可以使用-1

LREM key count value                                 #从存于 key 的列表里移除前 count 次出现的值为 value 的元素
                                                     #count > 0: 从头往尾移除值为 value 的元素
                                                     #count < 0: 从尾往头移除值为 value 的元素
                                                     #count = 0: 移除所有值为 value 的元素

RPOPLPUSH source destination                         #删除source列表中的删除最后一个元素将其追加到destination列表

LTRIM key start stop                                 #根据索引start和stop保留列表元素

hash:

hash 是Redis string类型的field和value的映射表,hash特别适合用于存储对象。每个 hash 可以存储 2∧32 - 1 键值对(40多亿)。

HDEL key field [field ...]                           #删除hash表中一个或多个字段

HEXISTS key field                                    #判断hash表中字段是否存在

HGET key field                                       #获取hash表中字段的值

HGETALL key                                          #获取hash表中所有字段

HSET key field value                                 #设置hash表中字段的值

HSETNX key field value                               #字段不存在时候才设置hash表中字段值,

HLEN key                                             #获取hash表中字段个数

HVALS key                                            #获取hash表中所有字段的值

HKEYS key                                            #获取hash表中所有的字段

HSTRLEN key field                                    #获取hash表中指定字段的值的长度

HMSET key field value [field value ...]              #批量设置hash表中字段的值

HMGET key field [field ...]                          #批量获取hash表中字段的值

set:

Set 是通过哈希表实现的的无序集合。集合成员是唯一的,添加,删除,查找的复杂度都是 O(1)。

Set 中最大的成员数为 2∧32 - 1 (4294967295, 每个集合可存储40多亿个成员)。

SADD key member [member ...]                         #添加一个或多个元素到集合中

SREM key member [member ...]                         #删除一个或多个集合中的元素

SCARD key                                            #获取集合中元素数量

SMEMBERS key                                         #返回集合中所有的元素

SINTER key [key ...]                                 #获取两个或两个以上集合的交集

SUNION key [key ...]                                 #获取两个或两个以上集合的并集

SDIFF key [key ...]                                  #获取两个或者两个以上集合的差集

SISMEMBER key member                                 #判断元素是否是在指定集合中

SMOVE source destination member                      #移动一个集合中的元素到另一个集合

SPOP key [count]                                     #移除count个集合中元素,count可选参数,默认为1,即移除一个

sorted set

有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。

有序集合每个元素都会关联一个double类型的分数,redis通过分数来为集合中的成员进行从小到大的排序。

有序集合的成员是唯一的,但分数(score)却可以重复。

ZADD key [NX|XX] [CH] [INCR] score member [score member ...]  #向一个有序集合添加成员(元素)
                                                              #参数:
                                                              #XX: 仅仅更新存在的成员,不添加新成员。
                                                              #NX: 不更新存在的成员。只添加新成员。
                                                              #CH: 修改返回值为发生变化的成员总数,原始是返回新添加成员的总数 (CH 是 changed 的意思)。
                                                              #更改的元素是新添加的成员,已经存在的成员更新分数。
                                                              #所以在命令中指定的成员有相同的分数将不被计算在内。注:在通常情况下,ZADD返回值只计算新添加成员的数量。
                                                              #INCR: 当ZADD指定这个选项时,成员的操作就等同ZINCRBY命令,对成员的分数进行递增操作。

ZCARD key                                                     #获取有序集合中元素个数

ZCOUNT key min max                                            #指定分数范围的元素个数

ZINCRBY key increment member                                  #为有序集的元素的score值加上增加指定的increment

ZRANGE key start stop [WITHSCORES]                            #根据有序集合中分数区间获取集合中的元素

ZREM key member [member ...]                                  #删除有序集合中一个或多个元素

ZSCORE key member                                             #设置元素在集合中的分数

参考

https://www.cnblogs.com/wdliu/p/9360286.html

posted @ 2020-12-18 17:38  wshenJin  阅读(101)  评论(0编辑  收藏  举报