详解Redis基本命令

栏目: 数据库 · 发布时间: 4年前

内容简介:当redis环境搭建结束后,接下来需要掌握并了解redis的一些相关命令,本篇文章主要从实际操作的层面来与大家分享redis基本命令,具体包括:Redis五大基本类型命令(Strings,Lists,Hashes,Sets和Sort Sets)和Keys相关命令。1. SET

redis 环境搭建结束后,接下来需要掌握并了解redis的一些相关命令,本篇文章主要从实际操作的层面来与大家分享redis基本命令,

具体包括:Redis五大基本类型命令(Strings,Lists,Hashes,Sets和Sort Sets)和Keys相关命令。

一  Strings

1. SET

SET 命令用于创建K/V,在创建K/V时,可以添加一些约束条件,如过期时间

定义:SET key value[expiration EX seconds|PX milliseconds] [NX|XX]

  • EX   seconds  – 以秒为单位设置key过期时间
  • PX   milliseconds  – 以毫秒为单位设置key过期时间
  • NX  – 如果key不存在,则设置key
  • XX  – 如果key存在时,则设置key

详解Redis基本命令

2.GET

GET命令用于通过key查询value

定义:GET key

详解Redis基本命令

3.APPEND

APPEND命令用于追加内容,若key存在,则在该key的value后追加值;若key不存在,则先创建key,再添加value;

定义:APPEND key value

详解Redis基本命令

4.BITCOUNT

计算value指定索引区间的为1的个数

定义:BITCOUNT key start end

详解Redis基本命令

5.BITFIELD

6.BITTOP

进行value的位操作,且将结果保存在destkey中

定义:BITOP operation destkey key1 [key2 ..]

详解Redis基本命令

7.BITP0S

命令返回字符串里面第一个被设置为1或者0的bit位

定义:BITPOS key bit start end

详解Redis基本命令

8.DECR

DECR命令用于将可转化为int类型的key值减1,需要注意的是,当key值不可转化为数值时,会出错

定义:DECR

详解Redis基本命令

8.DECRBY

DECRBY与DECR原理差不多,只不过DECRBY是减去多少。

定义:DECRBY key decrement

详解Redis基本命令

9.GETBIT

获取key的value值在指定offset处的bit值

定义:GETBIT key offset

详解Redis基本命令

10.GETRANGE

GETRANGE表示截取key相应位置的字符串

定义:GETRANGE key start end

详解Redis基本命令

11.GETSET

设置key的value值,并返回设置前的值

定义:GETSET key value

详解Redis基本命令

12.INC

自动加1

定义:INC key

详解Redis基本命令

13.INCBY

在当前key值基础上增加值

定义:INCBY key increment

详解Redis基本命令

14.INCRBYFLOAT\

在当前key值基础上增加浮点数

定义:INCRBYFLOAT key increment

详解Redis基本命令

15.MGET

批量返回指定key和value

定义:MGET key [key..]

详解Redis基本命令

16.MSET

批量设置多个key和value

定义:MSET key value [key value ..]

详解Redis基本命令

17.MSETNX

在批量设置key时,单批量设置中,只要有一个key已经存在,则该批设置全部取消,由于这种特性,

MSETNX 可以实现要么所有的操作都成功,要么一个都不执行,这样可以用来设置不同的key,来表示一

个唯一的对象的不同字段。

定义:MSETNX key value [key value ...]

详解Redis基本命令

18.PSETEX

设置过期时间,以毫秒为单位

定义:PSETEX  key  miliseconds  value

详解Redis基本命令

19.SETBIT

在key的value指定offset处设置bit值,并且返回offset处原来的bit值

定义:SETBIT key offset value

详解Redis基本命令

20.SETEX

设置k/v同时,设置过期时间

定义:SETEX key seconds value

详解Redis基本命令

21.SETNX

该命令与SET命令差不多,唯一区别是SETNX设置key时,若key不存在,则创建并添加value值,否则,不操作

定义:SETNX key value

详解Redis基本命令

22.SETRANGE

从value值的offset处,用新value替换。

定义:SETRANGE key offeset value

详解Redis基本命令

23.STRLEN

返回key的value的字符串长度

定义:STRLEN key

详解Redis基本命令

二 Hashes

(一)概述

(二)命令操作

1.HSET

设置hash单个值

定义:HSET key filed value

详解Redis基本命令

2.HGET

获取hash字段值

定义:HGET key field

详解Redis基本命令

3.HDEL

删除key的指定字段

定义:HDEL key field

详解Redis基本命令

4.HMSET

设置key的多个字段

定义:HMSET key value [key value ..]

详解Redis基本命令

5.HMGET

获取key的多个字段值

定义:HMGET key field [field..]

详解Redis基本命令

6.HGETALL

返回key指定哈希集中所有字段和值

定义:HGETALL key

详解Redis基本命令

7.HEXISTS

检查key中是否存在指定的field,存在返回1,不存在返回0

定义:HEXISTS key field

详解Redis基本命令

8.HKEYS

返回hashs的key的字段

定义:HKEYS key

详解Redis基本命令

9.HVALS

返回 key 指定的哈希集中所有字段的值

定义:HVALS key

详解Redis基本命令

10.HLEN

返回 key 指定的哈希集包含的字段的数量

定义:HLEN key

详解Redis基本命令

11.HSTRLEN

返回key的指定字段的字符串长度

定义:HSTRLEN key field

详解Redis基本命令

12.HINCRBY

指定字段增减指定值

定义:HINCRBY key field increment

详解Redis基本命令

13.HINCRBYFLOAT

指定字段增加指定浮点数

定义:HINCRBYFLOAT key field increment

详解Redis基本命令

11.HSCAN

12.HSETNX

与HSET功能一样,区别在于HSETNX会先判断field是否存在,若存在,则不做任何操作

定义:HSETNX key filed value

详解Redis基本命令

三  Lists

1.RPUSH

从队列右端压入数据到List,一次可以压入单个或多个数据

定义:RPUSH key value [value ..]

详解Redis基本命令

2.RPOP

从List移除元素,并返回被移除的元素

定义:RPOP key

详解Redis基本命令

3.LPUSH

从List左侧压入元素,返回压入后的List长度

定义:LPUSH key value [value ..]

详解Redis基本命令

4.LPOP

从List左侧移除元素,并返回被移除的元素

定义:LPOP key

详解Redis基本命令

5.LLEN

返回key对应的List长度

定义:LLEN key

详解Redis基本命令

6.LSET

设置key指定index处的值

定义:LSET key index value

详解Redis基本命令

7.LINDEX

返回指定index处的value值

定义:LINDEX key index

详解Redis基本命令

8.LINSERT

在List指定value前或后插入元素

定义:LINSERT key BEFORE|AFTER pivot value

详解Redis基本命令

9.LREM

从头或从尾移除前count次出现value的值,count为正数,则从头向尾开始;count为负数,则从

尾向头开始;count为0,移除所有为value的值

定义:LREM key count value

详解Redis基本命令

10.LTRIM

截取List指定区间的值

定义:LTRIM key start stop

详解Redis基本命令

11.LRANGE

获取List指定索引区间的值

定义:LRANGE key start end

详解Redis基本命令

12.LPUSHX

与LPUSH功能一样,都是插入从左侧插入元素,区别是,LPUSHX在插入元素

前,先判断key是否存在,只有key存在时,才插入元素。

定义:LPUSHX key value

详解Redis基本命令

13.RPUSHX

功能与RPUSH一样,区别是RPUSHX在插入元素前,先判断key是否存在,

只有key存在时,才插入元素。

定义:RPUSHX key value

14.RPOPLPUSH

从指定key中移除元素,且将移除的元素存放在另一个key中,返回被移除和放入的元素

定义:RPOPLPUSH source destination

详解Redis基本命令

15.BRPOPLPUSH

BRPOPLPUSHRPOPLPUSH 的阻塞版本。 当 source 包含元素的时候,这个命令表现

得跟 RPOPLPUSH 一模一样。 当 source 是空的时候,Redis将会阻塞这个连接,直到

另一个客户端 push 元素进入或者达到 timeout 时限。 timeout 为 0 能用于无限期阻塞

客户端

定义:BRPOPLPUSH key source destination timeout

16.BLPOP

BLPOP是阻塞式列表的弹出原语

定义:BLPOP key [key ..] timeout

17.BRPOP

BRPOP是一个阻塞的列表弹出原语

定义:BRPOP key [key ..] timeout

四  Sets

1.SADD

向Sets中添加元素,一次可添加单个或多个

定义:SADD key member [member..]

详解Redis基本命令

2.SMEMBERS

查看key所有元素

定义:SMEMBERS key

3.SCARD

返回key元素个数

定义:SCARD key

详解Redis基本命令

4.SISMEMBER

判断key中是否存在某个元素,存在返回1,不存在返回0

定义:SISMEMBER key member

详解Redis基本命令

5.SREM

定义:SREM key members [members ..]

详解Redis基本命令

6.SMOVE

从指定key移除元素到目标元素,移除成功返回1,否则返回0

定义:SMOVE

详解Redis基本命令

7.SPOP

从sets中随机取count个元素,返回随机取出的元素

定义:SPOP key [count]

详解Redis基本命令

8.SRANDMEMBER

从sets中随机返回count个元素

定义:SRANDMEMBER

详解Redis基本命令

9.SDIFF

返回集合差集

定义:SDIFF  key [key ..]

详解Redis基本命令

10.SDIFFSTORE

SDIFFSTORE命令与SDIFF命令功能一样,区别是SDIFFSTORE将差集的结果存放在destination中

定义:SDIFFSTORE destination key [key ..]

详解Redis基本命令

11.SINTER

定义:SINTER key [key..]

详解Redis基本命令

12.SINTERSTORE

SINTERSTORE功能与SINTER是一样的,都是返回差集,区别是SINTERSTORE将差集存在

destination中

定义:SINTERSTORE destination key [key..]

13.SUNION

SUNION返回并集

定义:SUNION key [key..]

详解Redis基本命令

14.SUNIONSTORE

SUNIONSTORE功能与SUNION一样,都是返回并集,区别是SUNIONSTORE

将并集存放在destination中

定义:SUNIONSTORE destinaiton key [key..]

15.SCAN

五 Sorted Sets

1.ZADD

添加新值

定义:ZADD key [NX|XX] [CH] [INCR] score member [score member]

详解Redis基本命令

2.ZRANGE

获取指定key的索引范围内的值,可只获取值或带权重的值。

定义:ZRANGE key start end [WIHTSCORES]

详解Redis基本命令

3.ZSCORE

返回成员的score

定义:ZSCORE key member

详解Redis基本命令

4.ZREM

从key中移除元素

定义:ZREM key member [member..]

详解Redis基本命令

5.ZRANK

返回有序集key中membe排名

定义:ZRANK key member

详解Redis基本命令

6.ZCOUNT

计算介于score范围内的元素个数

定义:ZCOUNT key min max

详解Redis基本命令

7.ZCARD

返回key的有序集个数

定义:ZCARD key

详解Redis基本命令

8.ZPOPMIN

从key中移除count个socre最低的元素

定义:ZPOPMIN key [count]

详解Redis基本命令

9.ZPOPMAX

从key中移除count个socre最高的元素

定义:ZPOPMAX

详解Redis基本命令

10.ZINCRY

为有序集key的成员member的score值加上增量increment,返回增量后的

score

定义:ZINCRY key increment member

详解Redis基本命令

11.BZPOPMIN

功能与ZPOPMIN一样,区别是BZPOPMIN带有阻塞

定义:BZPOPMIN key [key..] timeout

12.BZPOPMAX

功能与ZPOPMAX一样,区别是BZPOPMAX带有阻塞

定义:BZPOPMAX key [key..] timeout

13.ZINTERSCORE

计算有序集合的交集,其中destination用来存放交集结果,mumkeys指用于计算交集key的个数

,weight表示计算交集时,score乘以的权重,默认为1

定义:ZINTERSCORE destination mumkeys key [key..] [weights weight] [SUM|MIN|MAX]

详解Redis基本命令

14.ZUNIONSTORE

用法与ZINTERSCORE一样,只不过是计算有序集合的并集

定义:ZUNIONSTORE destination mumkeys key [key..] [weights weight] [SUM|MIN|MAX]

15.ZLEXCOUNT

ZLEXCOUNT 命令用于计算有序集合中指定成员之间的成员数量

定义:ZLEXCOUNT key min max

16.ZRANGEBYLEX

ZRANGEBYLEX 返回指定成员区间内的成员,按成员字典正序排序, 分数必须相同

定义:ZRANGEBYLEX key min max [limit offset count]

详解Redis基本命令

17.ZRANGBYSCORE

根据分数方位查找元素

定义:ZRANGBYSCORE key min max [withscores] [limit offset count]

详解Redis基本命令

18.ZREMRANGEBYRANK

移除有序集key中,指定排名(rank)区间内的所有成员

定义:ZREMRANGEBYRANK key start stop

详解Redis基本命令

19.ZREMRANGBYSCORE

移除有序集key中,所有score值介于min和max之间(包括等于min或max)的成员

定义:ZREMRANGBYSCORE key min max

详解Redis基本命令

20.ZREVRANGE

返回有序集key中,指定区间内的成员。其中成员的位置按score值递减(从大到小)来排列。

具有相同score值的成员按字典序的反序排列。 除了成员按score值递减的次序排列这一点外

定义:ZREVRANGE key start stop [withscores]

详解Redis基本命令

21.ZREVRANGEBYLEX

ZREVRANGEBYLEX 返回指定成员区间内的成员,按成员字典倒序排序, 分数必须相同

定义:ZREVRANGEBYLEX key min max

详解Redis基本命令

22.ZREVRANGEBYSCORE

返回有序集合中指定分数区间内的成员,分数由高到低排序

定义:ZREVRANGEBYSCORE key min max

详解Redis基本命令

23.ZREVRANK

返回有序集key中成员member的排名,其中有序集成员按score值从大到小排列。

排名以0为底,也就是说,score值最大的成员排名为0

定义:ZREVRANK key member

详解Redis基本命令

24.ZSCAN

定义:ZSCAN key cursor [math pattern] [count count]

六 Keys

1.DEL

删除key

定义:DEL key [key...]

详解Redis基本命令

2.DUMP

序列化key

定义:DUMP key

详解Redis基本命令

3.RESTORE

反序列化

定义:RESTORE key ttl serialeze-value [replace]

详解Redis基本命令

4.EXISTS

判断key是否存在,存在返回1,不存在返回0

定义:EXISTS key

详解Redis基本命令

5.EXPIRE

设置过期时间,以秒为单位

定义:EXPIRE seconds

详解Redis基本命令

6.EXPIREAT

EXPIREAT的作用和EXPIRE类似,都用于为 key 设置生存时间。

不同在于EXPIREAT命令接受的时间参数是 UNIX 时间戳 Unix timestamp

定义:EXPIREAT key timespan

详解Redis基本命令

7.KEYS

查看key,其中pattern满足正则表达式

定义:KEYS pattern

详解Redis基本命令

8.MIGRATE

定义:MIGRATE host port key destination-db timeout [copy] [replace]

9.MOVE

Redis MOVE 命令用于将当前数据库的 key 移动到给定的数据库 db 当中

定义:MOVE key db

详解Redis基本命令

10.OBJECT

OBJECT 命令可以在内部调试(debugging)给出keys的内部对象,它用于检查或者了

解你的keys是否用到了特殊编码 的数据类型来存储空间z。 当redis作为缓存使用的时候,

你的应用也可能用到这些由 OBJECT 命令提供的信息来决定应用层的key的驱逐策略(eviction policies)

定义:OBJECT subcommand [arguments [arguments..]]

11.PERSIST

持久化key

定义:PERSIST key

详解Redis基本命令

12.PEXPIRE

它以毫秒为单位设置 key 的生存时间

定义:PEXPIRE key milliseconds

13.PEXPIREAT

以毫秒为单位设置 key 的过期 unix 时间戳

定义:PEXPIREAT key milliseconds-timestamp

14.PTTL

以毫秒为单位返回 key 的剩余生存时间,功能与TTL差不多

定义:PTTL key

15.RANDOMKEY

从当前数据库随机返回一个key

定义:RANDOMKEY

详解Redis基本命令

16.RENAME

给key重新命名

定义:RENAME key newkey

17.RENAMENX

当且仅当 newkey 不存在时,将 key 改名为 newkey ,成功返回1,失败返回0

定义:RENAMENX key newkey

详解Redis基本命令

18.SCAN

增量迭代集合元素

定义:SCAN  cursor [match pattern] [count count]

19.SORT

排序

定义:SORT key [by pattern] [limit offset count] [get pattern] [asc|desc] [alpha] destination

20.TOUCH

修改key最后访问时间

定义:TOUCH key [key..]

详解Redis基本命令

21.TTL

计算key过期剩余时间,返回剩余的秒数

定义:TTL key

22.TYPE

返回key类型

定义:TYPE key

详解Redis基本命令

23.UNLINK

异步删除keys

定义:UNLINK key [key..]

详解Redis基本命令

24.WAIT

当前连接的写操作会产生日志偏移,该命令会返回已处理至该偏移量的slaves的个数

定义:WAIT numslavess timeout

七  版权区

  •    转载博客,必须注明博客出处
  •    博主网址:http://www.cnblogs.com/wangjiming/
  •    如您有新想法,欢迎提出,邮箱:2098469527@qq.com
  •   专业.NET之家技术QQ群:490539956
  •   专业化 Java 之家QQ群:924412846
  •   有问必答QQ群:2098469527
  •   一对一技术辅导QQ:2098469527

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

An Introduction to the Analysis of Algorithms

An Introduction to the Analysis of Algorithms

Robert Sedgewick、Philippe Flajolet / Addison-Wesley Professional / 1995-12-10 / CAD 67.99

This book is a thorough overview of the primary techniques and models used in the mathematical analysis of algorithms. The first half of the book draws upon classical mathematical material from discre......一起来看看 《An Introduction to the Analysis of Algorithms》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具