redis命令
就我而言,我自己把命令分为两部分学习,一部分是基本常用命令,基于redis的基本结构和数据类型执行的操作。
基本常用命令
从上面我们可以得知,redis是Map< String,Object>形式(key-calue)存在的,Object代指redis允许的五种数据类型。所以redis的基本命令可以分为key命令,string命令,hash命令,list命令,set命令,zset命令
key命令
key命令主要是用户操作管理redis的键的。我们知道redis是Map< String,Object>,所以根据string类型的keyname可以操作这个Map。
语法
command KEY_NAME
command是一个命令,key_name是键名
keys
语法
KEYS pattern
pattern指的ant风格通配符:
? 匹配任何单字符
* 匹配0或者任意数量的字符
功能
返回与表达式匹配的key。keys *将返回该数据库所有key
exists
语法
Exists key
功能
判断该键是否存在
move
语法
MOVE key db
功能
将某key移动到指定数据库,并删除本数据库中的key
expire
语法
EXPIRE key second
功能
设置某键生存时间(秒单位)
ttl
语法
TTL key
功能
以秒为单位返回key的生存时间
pttl
语法
PTTL key
功能
以毫秒为单位返回key的生存时间
type
语法
TYPE key
功能
返回key的数据类型
renamenx
语法
RENAMENX key newKey
功能
仅当newKey不存在时,修改键名。
string命令
string命令主要是用户操作管理redis的String数据类型的数据。
set/get
语法
SET keyName keyValue
GET keyName
功能
设置keyName的键的值为keyValue / 获取keyName的值
del
语法
DEL keyName
功能
删除键名为keyName的键
GETRANGE
语法
GETRANGE keyName start end
功能
获取存储在指定 key 中字符串的子字符串。字符串的截取范围由 start 和 end 两个偏移量决定(包括 start 和 end 在内)。
SETRANGE
语法
SETRANGE keyName offset value
功能
用指定的字符串覆盖给定 key 所储存的字符串值,覆盖的位置从偏移量 offset 开始。
GETSET
语法
GETSET keyName value
功能
将给定 key 的值设为 value ,并返回 key 的旧值(old value)。
SETBIT/GETBIT
语法
SETBIT keyName offset value
GETBIT keyName offset
功能
对 key 所储存的字符串值,设置或清除指定偏移量上的位(bit)。
key 所储存的字符串值,获取指定偏移量上的位(bit)。
h6>MGET
语法
MGET key1 [key2..]
功能
获取所有(一个或多个)给定 key 的值。
SETEX
语法
SETEX key seconds value
功能
将值 value 关联到 key ,并将 key 的过期时间设为 seconds (以秒为单位)。
PSETEX
语法
PSETEX key milliseconds value
功能
将值 value 关联到 key ,并将 key 的过期时间设为 seconds (以毫秒为单位)。
SETNX
语法
SETNX key value
功能
只有在 key 不存在时设置 key 的值。
STRLEN
语法
STRLEN key
功能
返回 key 所储存的字符串值的长度。
STRLEN
语法
STRLEN key
功能
返回 key 所储存的字符串值的长度。
MSET
语法
MSET key value key value
功能
同时设置一个或多个 key-value 对。
MSETNX
语法
MSETNX key value key value
功能
同时设置一个或多个 key-value 对,,当且仅当所有给定 key 都不存在。
INCR
语法
INCR key
功能
将 key 中储存的数字值增一,并返回key增一后的值。
INCRBY
语法
INCRBY key increment
功能
将 key 所储存的值加上给定的增量值(increment),并返回key增量后的值。 。
DECR
语法
DECRkey
功能
将 key 中储存的数字值减一,并返回key减一后的值。
DECRBY
语法
DECRBY key increment
功能
将 key 所储存的值加上给定的减量值(increment),并返回key减量后的值。 。
APPEND
语法
APPEND key value
功能
如果 key 已经存在并且是一个字符串, APPEND 命令将 指定value 追加到改 key 原来的值(value)的末尾。
如果 key 不存在, APPEND 就简单地将给定 key 设为 value ,就像执行 SET key value 一样。
hash命令
hash命令主要是用户操作管理redis的hash数据类型的数据。相当于java的Map< String,Map< String,String>>
HMSET/HSET/HGET//HMGET/HGETALL
语法
HMSET key field1 value1 [field2 value2 ]
HSET key field value
HGET key field
HMSET key field1 value1 [field2 value2 ]
HGETALL key
功能
以上都是设置值或者获取值的
HMSET 同时将多个 field-value (域-值)对设置到哈希表 key 中。
HSET 将哈希表 key 中的字段 field 的值设为 value 。
HGET 获取存储在哈希表中指定字段的值。
HMGET 获取所有给定字段的值
HGETALL 获取在哈希表中指定 key 的所有字段和值
HDEL
语法
HDEL key field1 [field2]
功能
删除一个或多个哈希表字段
HEXISTS
语法
HEXISTS key field1
功能
查看哈希表 key 中,指定的字段是否存在。
如果哈希表含有给定字段,返回 1 。 如果哈希表不含有给定字段,或 key 不存在,返回 0 。
HLEN
语法
HLEN key
功能
获取哈希表中字段的数量
HVALS
语法
HVALS key
功能
获取哈希表中所有值
List命令
List命令主要是用户操作管理redis的List数据类型的数据。相当于java的Map< String,List< String>>
lpush/lpop/rpush/rpop
语法
LPUSH key value1 [value2]
LPOP key
RPUSH key value1 [value2]
RPOP key
功能
将一个或多个值插入到列表头部(左边)
移出并获取列表的第一个元素(左边)
在列表中添加一个或多个值(右边)
移除并获取列表最后一个元素(右边)
LRANGE
语法
LRANGE key start stop
功能
获取列表指定范围内的元素
区间以偏移量 START 和 END 指定。 其中 0 表示列表的第一个元素, 1 表示列表的第二个元素,以此类推。 你也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。
set命令
set命令主要是用户操作管理redis的List数据类型的数据。相当于java的Map< String,Set< String>>
SADD
语法
SADD key member1 [member2]
功能
向集合添加一个或多个成员
SMEMBERS
语法
SMEMBERS key
功能
返回集合中的所有成员
SCARD
语法
SCARD key
功能
获取集合的成员数
SDIFF
语法
SDIFF key1 [key2]
功能
返回给定所有集合的差集
SINTER
语法
SINTER key1 [key2]
功能
返回给定所有集合的交集
SUNION
语法
SUNION key1 [key2]
功能
返回给定所有集合的并集
SISMEMBER
语法
SISMEMBER key member
功能
判断 member 元素是否是集合 key 的成员
SMOVE
语法
SMOVE source destination member
功能
将 member 元素从 source 集合移动到 destination 集合
SPOP
语法
SPOP key
功能
移除并返回集合中的一个随机元素
SRANDMEMBER
语法
SRANDMEMBER key [count]
功能
返回集合中一个或多个随机数
SREM
语法
SREM key member1 [member2]
功能
移除集合中一个或多个成员
zset命令
set命令主要是用户操作管理redis的List数据类型的数据。
ZADD
语法
ZADD key score1 member1 [score2 member2]
功能
向有序集合添加一个或多个成员,或者更新已存在成员的分数
ZRANGE
语法
ZRANGE key start stop [WITHSCORES]
功能
- 向有序集合添加一个或多个成员,或者更新已存在成员的分数
- 其中成员的位置按分数值递增(从小到大)来排序。
- 下标参数 start 和 stop 都以 0 为底,也就是说,以 0 表示有序集第一个成员,以 1 表示有序集第二个成员,以此类推。
你也可以使用负数下标,以 -1 表示最后一个成员, -2 表示倒数第二个成员,以此类推。
ZRANGE
语法
ZRANGE key start stop [WITHSCORES]
功能
计算有序集合中指定分数区间的成员数量。
ZCARD
语法
ZCARD key
功能
计算集合中元素的数量。
Zincrby
语法
ZINCRBY key increment member
功能
对有序集合中指定成员的分数加上增量 increment