打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
redis 命令
字符串
1. exists 
判断一个键值是否存在,如果存在返回整数1,否则返回0
2. set key value 
赋值
3. get key  
取值
?4. del key [key.....] 
可以删除一个或多个,返回删除的键个数 。删除多个键,每个键之间用空格隔开
5. type key 
获得键值的数据类型
6. incr key  
   递增数字 当存储的字符串是整数形式时,redis提供了一个使用的命令 incr 作用是让当前的键值递增,并返回递增后的值
7. incr num
 当要操作的键不存在时会默认键值为 0  ,所以第一次递增后的结果是 1 ,当键值不是整数时 redis会提示错误
8. incrby key increment
incrby 命令与 incr 命令基本一样,只不过前者可以通过 increment 参数指定一次增加的数值如:
            incrby num 2
            incrby num 3
9.  decr key
decr 命令与incr 命令用法相同,只不过是让键值递减,每次减一
10. decrby key increment
 decrby 命令与 incrby命令用法相同
11. incrbyfloat
incrbyfloat 命令类似 incrby 命令,差别是前者可以递增一个双精度浮点数,如:
        incrbyfloat num 2.7
    注意: ( 受reids 版本限制,版本需要大于 2.6 版本) 
12. append key value
  作用是向键值的末尾追加 value ,如果键不存在则将改键的值设置为 value,即相当于 set key value。返回值是追加后字符串的长度
13. strlen key
返回键值的长度,如果键不存在则返回0
14. mget key [key1.....]
同时获得多个键值
15. mset key value [key1 value1 .....]
同时设置多个键值
16. getbit key offset
17. setbit key offset value
18. bitcount key [strart] [end]
19. bitop operation destkey key [key .....]
散列列席
20.  hset key field value 散列类型赋值 如: hset user truename xiaoli
hset 命令的方便之处在于不区分插入和更新操作,这意味着修改数据时不用事先判断字段是否存在来决定要执行的是插入操作还是更新操作,当执行的是插入操作时, hset 命令返回 1 ,当执行的是更新操作时,hset 命令返回的是 0 ,当键本身不存在时, hset 命令还会自动建立他
21.  hget key field 散列类型取值 如:hget user truename
22.  hmset key field value [ field value ...... ] 散列类型设置多个值
23.  hmget key field [ field ...... ]散列类型取多个值
24.  hgetall key  获取键中所有字段和字段值  (不知道键中有哪些字段时使用它,返回的结果是字段和字段值组成的列表) 
 

25. hexists key field  判断散列类型的字段名是否存在
存在返回 1 ,否则返回 0
 
 
26. hsetnx key field value 当散列类型的字段不存在时候赋值,返回1
 hsetnx 命令与hset 命令类似,区别在于如果字段已经存在,hsetnx 命令将不执行任何操作,返回0
27. hincrby key field increment  使散列类型的字段值增加指定的整数,只能是整数,增加量为小数会提示错误
28. hdel key field [ field .....] 删除一个或多个字段,返回删除字段的个数
29.  hkeys key 只获取散列类型的字段名 获取所有字段的名字
 
 30. hvals key  只获取散列类型的字段值 ,获得键中所有字段的值
 
 31. hlen key  获取散列类型的字段的数量

列表类型?
向列表两端增加元素
32. lpush key value [ value ....... ] 命令用来向列表左边增加元素,返回表示增加元素后列表的长度 (z在头部插入值)
33. rpush key value [ value ....... ] 命令用来向列表右边增加元素,返回表示增加元素后列表的长度 (z在尾部掺入值)
从列表两端弹出元素
34. lpop key 命令可以从列表左边弹出一个元素,lpop 命令执行两步操作,1:将列表左边的元素从列表中移除,2:返回被移除元素值
35.rpop key 命令可以从列表右边弹出一个元素
36. llen key 获取列表中元素的个数 当键不存在时,llen 返回 0
37. lrange key start stop 获得列表片段 
获得列表中的某一片段,返回索引从 start 到 stop 之间的所有元素(包括两端的元素) 索引开始为 0
 注:lrange 与很多语言中用来截取数组片段的方法有一点区别是 lrange 返回的值包含最右边的元素
               lrange 命令也支持负索引,表是从右边开始计算序数,如 ' -1 ' 表示最右边第一个元素, ' -2 ' 表示最右边第二个元素,一次类推 

38. lrem key count value 删除列表中指定的值
 lrem 命令会删除列表中前 count 个值为 value 的元素,返回值是实际删除的元素个数。根据count 值的不同,lrem 命令执行的方式会
 略有差异
            当 count > 0 时,lrem 命令会从列表左边开始删除前 count 个值为 value 的元素
            当 count < 0 时,lrem 命令会从列表右边开始删除前count 个值为 value 的元素
            当 count = 0 时,lrem 命令会删除所有值为value的元素
39.lindex key index 获取指定索引的元素值
 lindex 命令用来返回指定索引的元素,索引从 0 开始 ,如果 index 是负数则表示从右边开始计算的索引,最右边元素的索引是 -1 
40. lset key index value 设置 指定索引的元素值
 lset 是通过索引操作列表的命令,它会将索引为 index 的元素赋值为 value 
41. ltrim key start end
ltrim 命令可以删除指定索引范围之外的所有元素,其指定列表范围的方法和 lrange 命令相同
 ltrim 命令常和 lpush 命令一起使用来限制列表中元素的数量,比如记录日志时我们希望只保留最近的 100 条日志,则每次加入新元素时
   调用一次ltrim 命令即可;
42. linsert key before | after pivot value     向列表中插入元素
  linsert 命令首先会在列表中从左到右查找值为 pivot 的元素,然后根据第二个参数是 before 还是 after 来决定将 value 插入到该元素的前面还是后面,如果命令执行成功,返回插入操作完成之后列表的长度。如果没有找到 pivot 返回 -1 如果key 不存在或为空,返回 0
43. rpoplpush source destination 将元素(source表的最后一个元素)从一个列表(source表)转到另一个列表(destination)的头部 
  

集合类型 
44.sadd key member [ member .... ]   增加或删除命令
 sadd 命令用来向集合中增加一个或多个元素,如果键不存在则会自动创建。因为在一个集合中不能有相同的元素,所以如果要加入的元素已经存在与集合中就会忽略这个元素。返回值是成功加入的元素数量(忽略的元素不计算在内)
45. srem key member [ member .... ]  删除命令
用来从集合中删除一个或多个元素,并返回删除成功的个数
46. smembers key 获取集合中所有元素的
返回集合中的所有元素
47.sismember key member 判断元素是否在集合中
 判断一个元素是否在集合中是一个时间复杂度为 0(1) 的操作,无论集合中有多少个元素, sismember 命令始终可以极快的返回结果。当值存在时 sismember 命令返回 1 ,当值不存在或者键不存在时返回 0
48.sdiff key [ key ...... ]
 sdiff 命令用来对多个集合执行差集运算。集合 A 与集合 B 的差集表示为 A- B ,代表所有属于 A 且不属于 B 的元素构成的集合,即 
 A - B = { x| x∈A  且 x ∈/B }
命令使用方法:
               sadd seta 1 2 3 4 6 7 8
                sadd setb 2 3 4
                sdiff seta setb
        该命令支持同时传入多个键, 计算顺序是先计算 seta 和 setb 在计算结果与 setc 的差集
                sadd setc 2 3 4
                sdiff seta setb setc
49.sinter key [ key ..... ]
该命令用来对多个集合执行交集运算。集合 A 与集合 B 的交集表示为 A∩B,代表所有属于 A 且属于 B 的元素构成的集合
            即 A∩B = { x| x∈A  且 x ∈B }
命令使用方法:
                sinter seta setb
                该命令同样支持同时传入多个键
50.  sunion key [ key ...... ]
        该命令用来对多个集合执行并集运算。集合 A 与集合 B的并集表示为 A∪B ,代表所有属于A或所有属于B的元素构成的集合
            即  A∪B = { x| x∈A  或 x ∈B }
 命令使用方法:
                sunion seta setb
                该命令同样支持同时传入多个键
51.   scard key  获取集合中元素个数
52. sdiffstore destination key [ key ...... ]
sdiffstore 命令和 sdiff 命令功能一样,唯一的区别就是前者不会直接返回运算的结果,而是将结果存在 destination 键中
53. sinterstore destination key [ key ...... ]
  sinterstore 这个命令类似于 sinter 命令,但它将结果保存到 destination 集合,而不是简单地返回结果集。
54.sunionstore destination key [ key ...... ]
 sunionstore 这个命令类似于 sunion 命令,但它将结果保存到 destination 集合,而不是简单地返回结果集。
55. srandmember key [ count ]
该命令用来随机从集合中获取一个元素
还可以传递 count 参数来一次随机获得多个元素,根据 count 的正负不同,具体表现也不同
          当count 为正数时,srandmember 会随机获取从集合里获得 count 个不重复的元素。如果 count 的值大于集合中的元素个数,则  srandmember 会返回集合中的全部元素
          当 count 为负数时,srandmember 会随机从集合中获得 |count| 个的元素,这些元素有可能相同
注:当传递count 参数时,在windows环境下提示命令参数错误
56. spop key  从集合中弹出一个元素
由于集合类型的元素是无序的,所以 spop 命令会从集合中随机选择一个元素弹出,返回值为被移除的随机元素,如果 key 不存在或者key 为空集时,返回 nil
有序集合类型(sorted set)
57. zadd key score member [ score member ...... ] 增加元素
 zadd 命令用来向有序集合中加入一个元素和该元素的分数,如果该元素已经存在,则会用新的分数替换原有的分数。zadd命令的返回 值是新加入到集合中的元素个数(不包含之前已经存在的元素)
58. zscore key member 获得元素的分数
59. zrange key start stop [ withscores ] 获得排名在某个范围的列表
zrange 命令和 lrange 命令十分相似,如索引都是从0开始,负数代表从后向前查找(-1 表示最后一个元素)。如果需要同时获得元素的分数的话,可以在 zrange 命令的尾部加上 widthscores 参数
      注:如果两个元素的分数相同,redis会按照字典顺序(即 0<9<A<Z<a<z 这样的顺序)来进行排列。如果元素的值是中文,则取决于中文的编码方式,
60.  zrevrange key start stop [ withscores ]
 zrevrange 命令和 zrange 的唯一不同在于 zrevrange 是按照元素分数从大到小的顺序给定结果的
61. zrangebyscore key min max [ withscores ] [ limit offset count ]
该命令按照元素分数从小到大的顺序返回分数在 min 到 max 之间(包含 min 和max 的元素)
       如果希望分数范围不包含端点值,可以在分数前加上 "(" 符号,例如:希望返回80分到100分的的数据,可以包含80分单不包含100分
        命令:zrangebyscore scoreboard 80 (100 widthscores
        min 和 max 还支持无穷大,同 zadd 命令一样,-inf 和 +inf 分别表示负无穷大和正无穷大。比如希望得到所有分数高于 80分(不包含80分)的人的名单,但是却不知道最高分是多少,这是就可以使用 +inf,withscores 参数表示打印出对应的分数
        zrangebyscore scoreboard (80 +inf
        命令 limit offset count 与 SQL 中的用法基本相同,即在获得的元素列表的基础上向后偏移 offset 个元素并且只获取前count个元素
        zrevrangebyscore 不仅是按照元素分数从大往小的顺序给出结果,而且他的 min 和max 的参数的顺序和 zrangebyscore 命令是相反的
62. zincrby key increment member 增加某个元素的分数
zincrby 命令可以增加一个元素的分数,返回值是更改后的分数,例如想给peter 加 4 分
               zincrby scoreborder 4 peter
               increment  也可以是负数表示减分
               zincrby scoreborder -4 peter
            如果指定元素不存在,redis 在执行命令前会先建立它并将他的值赋为0在执行操作    
            
63.zcard key   获取集合中的元素
64.zcount key min max 获取指定分数范围内的元素个数
  zcount 命令的 min max 参数的特性与 zrangebyscore 命令中的一样
65. zrem key member [ member .... ]
 zrem 命令的返回值是成功删除的元素数量(不包含本来就不存在的元素)
66. zremrangebyrank key start stop   按照排名范围删除元素
按照元素分数从小到大的顺序(即索引 0 表示最小的值)删除在指定排名范围内的所有元素,并返回删除元素的数量
67. zremrangebyscore key start stop 按分数范围删除元素
 命令删除指定分数范围内的所有元素,参数 min 和 max 的特性和 zrangebyscore 命令中的一样,返回值是删除
68.zrank key member 获取元素的排名
 zrank 命令会按照元素分数从小到大的顺序获得指定的元素排名(从 0 开始,即分数最小的元素排名为0)
69.zrevrank key member 获取元素的排名
  zrebrank 命令则正好相反,分数最大的元素排名为0
70. zinterstore destination numkeys key [ key ... ] [ weights weight [ weight ... ] ] [ aggregate SUM | MIN | MAX ]  计算有序集合的交集并保存下来
zinterstore 命令用来计算多个有序集合(其中有续集key的个数必须以numkeys参数指定)?的交集并将结果存储在 destination 键中(同样以有序集合类型存储),返回值为 destination ,使用weights为每个有序集指定个乘法因子,每个有序集的score在传递给集合函数(aggregat)之前,先乘以乘法因子。如果没指定乘法因子weight,默认是1;使用aggregate选项指定交集的聚合方式。min,最小score,max,最大score,sum,求和。
键中元素的个数,destination 键中元素的分数是由 aggregate 参数决定的
            1. 当 aggregate 是 SUM (也就是默认值),destination 键中元素的分数是每个参与计算的集合中该元素分数的和
                
            2.当 aggregate 是 MIN 时,destination 键中元素的分数是参与计算的集合中该元素分数最小值
                
            3.当 aggregate 是 MAX 是,destination 键中元素的分数是参与计算的集合中该元素分数最大值
         
          zinterstore 命令还能通过 weights 参数设置每个集合的权重,每个集合在参与计算时元素的分数会被乘上该集合的权重

Redis 连接​命令
71.AUTH password 验证密码是否正确
72.ECHO message 打印字符串
73.PING 查看服务是否运行
74.QUIT 关闭当前连接
75.SELECT index 切换到指定的数据库







本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Redis入门(2) - 数据类型
Redis常用命令整理
Redis_数据类型
Redis数据结构详解,五种数据结构分分钟掌握
Redis
jfinal redis的使用
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服