redis 指令文档

时间:2023-01-12 03:49:12

参考:https://redis.io/commands

http://www.runoob.com/redis/redis-lists.html

redis:

打开一个 cmd 窗口 使用cd命令切换目录到 C:\redis 运行 redis-server.exe redis.windows.conf 。

这时候另启一个cmd窗口,原来的不要关闭,不然就无法访问服务端了。

切换到redis目录下运行 redis-cli.exe -h 127.0.0.1 -p 6379 。

Redis 键(key)

查:

KEYS PATTERN
Redis Keys 命令用于查找所有符合给定模式 pattern 的 key 。。
EXISTS KEY_NAME
Redis EXISTS 命令用于检查给定 key 是否存在。
PTTL KEY_NAME
Redis Pttl 命令以毫秒为单位返回 key 的剩余过期时间。
TYPE KEY_NAME
Redis Type 命令用于返回 key 所储存的值的类型。

改:

Expire KEY_NAME TIME_IN_SECONDS
Redis Expire 命令用于设置 key 的过期时间。key 过期后将不再可用。
PERSIST KEY_NAME
Redis PERSIST 命令用于移除给定 key 的过期时间,使得 key 永不过期。
RENAME OLD_KEY_NAME NEW_KEY_NAME
Redis Rename 命令用于修改 key 的名称 。
RENAMENX OLD_KEY_NAME NEW_KEY_NAME
Redis Renamenx 命令用于在新的 key 不存在时修改 key 的名称 。
DEL KEY_NAME
Redis DEL 命令用于删除已存在的键。不存在的 key 会被忽略。

Redis 字符串(String)

Redis 字符串数据类型的相关命令用于管理 redis 字符串值

增:

SET KEY_NAME VALUE
Redis SET 命令用于设置给定 key 的值。如果 key 已经存储其他值, SET 就覆写旧值,且无视类型。
SETEX KEY_NAME TIMEOUT VALUE
Redis Setex 命令为指定的 key 设置值及其过期时间。如果 key 已经存在, SETEX 命令将会替换旧的值。
SETNX KEY_NAME VALUE
Redis Setnx(SET if Not eXists) 命令在指定的 key 不存在时,为 key 设置指定的值。
MSET key1 value1 key2 value2 .. keyN valueN
Redis Mset 命令用于同时设置一个或多个 key-value 对。
MSETNX key1 value1 key2 value2 .. keyN valueN
Redis Msetnx 命令用于所有给定 key 都不存在时,同时设置一个或多个 key-value 对。
PSETEX key1 EXPIRY_IN_MILLISECONDS value1
Redis Psetex 命令以毫秒为单位设置 key 的生存时间。

查:

GET KEY_NAME
Redis Get 命令用于获取指定 key 的值。如果 key 不存在,返回 nil 。如果key 储存的值不是字符串类型,返回一个错误。
GETRANGE KEY_NAME start end
Redis Getrange 命令用于获取存储在指定 key 中字符串的子字符串。字符串的截取范围由 start 和 end 两个偏移量决定(包括 start 和 end 在内)。
MGET KEY1 KEY2 .. KEYN
Redis Mget 命令返回所有(一个或多个)给定 key 的值。 如果给定的 key 里面,有某个 key 不存在,那么这个 key 返回特殊值 nil 。
STRLEN KEY_NAME
Redis Strlen 命令用于获取指定 key 所储存的字符串值的长度。当 key 储存的不是字符串值时,返回一个错误。

改:

GETSET KEY_NAME VALUE
Redis Getset 命令用于设置指定 key 的值,并返回 key 的旧值。
APPEND KEY_NAME NEW_VALUE
Redis Append 命令用于为指定的 key 追加值。如果 key 已经存在并且是一个字符串, APPEND 命令将 value 追加到 key 原来的值的末尾。如果 key 不存在, APPEND 就简单地将给定 key 设为 value ,就像执行 SET key value 一样。

计数操作:

INCR KEY_NAME
Redis Incr 命令将 key 中储存的数字值增一。
INCRBY KEY_NAME INCR_AMOUNT
Redis Incrby 命令将 key 中储存的数字加上指定的增量值。
INCRBYFLOAT KEY_NAME INCR_AMOUNT
Redis Incrbyfloat 命令为 key 中所储存的值加上指定的浮点数增量值。
DECR KEY_NAME
Redis Decr 命令将 key 中储存的数字值减一。
DECRBY KEY_NAME DECREMENT_AMOUNT
Redis Decrby 命令将 key 所储存的值减去指定的减量值。

Redis 哈希(Hash)

Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。

增:

HSET KEY_NAME FIELD VALUE
Redis Hset 命令用于为哈希表中的字段赋值 。
HSETNX KEY_NAME FIELD VALUE
Redis Hsetnx 命令用于为哈希表中不存在的的字段赋值 。
HMSET KEY_NAME FIELD1 VALUE1 ...FIELDN VALUEN
Redis Hmset 命令用于同时将多个 field-value (字段-值)对设置到哈希表中。

查:

HLEN KEY_NAME
Redis Hlen 命令用于获取哈希表中字段的数量。
HKEYS key
Redis Hkeys 命令用于获取哈希表中的所有域(field)。
HVALS KEY_NAME
Redis Hvals 命令返回哈希表所有域(field)的值。
HGETALL KEY_NAME
Redis Hgetall 命令用于返回哈希表中,所有的字段和值。
HEXISTS KEY_NAME FIELD_NAME
Redis Hexists 命令用于查看哈希表的指定字段是否存在。
HGET KEY_NAME FIELD_NAME
Redis Hget 命令用于返回哈希表中指定字段的值。
HMGET KEY_NAME FIELD1...FIELDN
Redis Hmget 命令用于返回哈希表中,一个或多个给定字段的值。

改:

HDEL KEY_NAME FIELD1.. FIELDN
Redis Hdel 命令用于删除哈希表 key 中的一个或多个指定字段,不存在的字段将被忽略。

计数操作:

HINCRBY KEY_NAME FIELD_NAME INCR_BY_NUMBER
Redis Hincrby 命令用于为哈希表中的字段值加上指定增量值。
HINCRBYFLOAT KEY_NAME FIELD_NAME INCR_BY_NUMBER
Redis Hincrbyfloat 命令用于为哈希表中的字段值加上指定浮点数增量值。

Redis 列表(List)

Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)

增:

LPUSHX KEY_NAME VALUEN
Redis Lpushx 将一个值插入到已存在的列表头部,列表不存在时操作无效。
LPUSH KEY_NAME VALUE1.. VALUEN
Redis Lpush 命令将一个或多个值插入到列表头部。
RPUSH KEY_NAME VALUE1..VALUEN
Redis Rpush 命令用于将一个或多个值插入到列表的尾部(最右边)。
RPUSHX KEY_NAME VALUE1..VALUEN
Redis Rpushx 命令用于将一个值插入到已存在的列表尾部(最右边)。
LINSERT key BEFORE|AFTER pivot value
Redis Linsert 命令用于在列表的元素前或者后插入元素。
LSET KEY_NAME INDEX VALUE
Redis Lset 通过索引来设置元素的值。

查:

LINDEX KEY_NAME INDEX_POSITION
Redis Lindex 命令用于通过索引获取列表中的元素。你也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。
LINDEX KEY_NAME INDEX_POSITION
Redis Lindex 命令用于通过索引获取列表中的元素。你也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。
LLEN KEY_NAME
Redis Llen 命令用于返回列表的长度。
LRANGE KEY_NAME START END
Redis Lrange 返回列表中指定区间内的元素,区间以偏移量 START 和 END 指定。

改:

BLPOP LIST1 LIST2 .. LISTN TIMEOUT
Redis Blpop 命令移出并获取列表的第一个元素, 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。
BRPOP LIST1 LIST2 .. LISTN TIMEOUT
Redis Brpop 命令移出并获取列表的最后一个元素, 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。
BRPOPLPUSH LIST1 ANOTHER_LIST TIMEOUT
Redis Brpoplpush 命令从列表中弹出一个值,将弹出的元素插入到另外一个列表中并返回它; 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止。
Lpop KEY_NAME
Redis Lpop 命令用于移除并返回列表的第一个元素。
LREM KEY_NAME COUNT VALUE
Redis Lrem 根据参数 COUNT 的值,移除列表中与参数 VALUE 相等的元素。
LTRIM KEY_NAME START STOP
Redis Ltrim 对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除。
RPOP KEY_NAME
Redis Rpop 命令用于移除并返回列表的最后一个元素。
RPOPLPUSH SOURCE_KEY_NAME DESTINATION_KEY_NAME
Redis Rpoplpush 命令用于移除列表的最后一个元素,并将该元素添加到另一个列表并返回。