通用指令
- keys parttern 查询key
(parttern即通配符,不是正则表达式,例如 keys a? 匹配以a开头的长度为2的key)
-
del key 删除key
-
exists key 获取key是否存在
-
type key 获取key的类型
-
expire key seconds 为指定key设置有效期,单位秒
-
pexpire key milliseconds 为指定key设置有效期,单位毫秒
-
ttl key 获取key的有效时间,单位秒
-
pttl key 获取key的有效时间,单位毫秒
-
persist key 切换key从时效性转换为永久性
-
rename key newkey
-
renamenx key newkey 改名,nx就是not exists不存在才能修改
-
select index 切换数据库
-
move key db 数据移动到另一个数据库
-
dbsize 数据库中数据总数
-
flushdb 清除当前库
-
flushall 清空所有库
string类型指令
就类似Java的字符串。
-
set key value 添加/修改数据
-
get key 获取数据
-
mset key1 value1 key2 value2 ... 添加/修改多个数据
-
mget key1 key2 ... 获取多个数据
-
strlen key 获取数据字符个数(字符串长度)
-
append key value 追加信息到原始信息后部(如果原始信息存在就追加,否则新建)
-
incr key 设置数值数据增加指定范围的值
-
incrby key increment
-
incrbyfloat key increment
-
decr key 设置数值数据减少指定范围的值
-
decrby key increment
-
setex key seconds value 设置数据具有指定的生命周期
-
psetex key milliseconds value
Hash类型指令
就类似Java的HashMap。在Redis中为:Map<key,Map<key,value>>。
这里主要是增删改查第二个Map中的内容,如果想删除整个对象,采用删除String类型的指令。参照上面的String指令,前面都加上h。
-
hset key field value 添加/修改数据
-
hget key field 获取key对象的field字段的数据
-
hgetall key 获取key对象的所有字段信息
-
hkeys key 获取哈希表中所有的字段名
-
hvals key 获取哈希表中所有的字段值
-
hdel key field1 [field2] 删除key对象的field1、field2字段的数据
-
hmset key field1 value1 field2 value2 ... 添加/修改多个数据
-
hmget key field1 field2 ... 获取多个数据
-
hlen key 获取哈希表中字段的数量
-
hexists key field 获取哈希表中是否存在指定的字段
-
hincrby key field increment 设置指定字段的数值数据增加指定范围的值
-
hincrbyfloat key field increment
List类型指令
List类型类似于Java LinkedList。按顺序处理操作,可以实现先进先出,也可以实现后进先出。
-
lpush key value1 [value2] ...... 在左边添加/修改数据
-
rpush key value1 [value2] ...... 在右边添加/修改数据
-
lrange key start stop 获取数据(循环变量) ,start和stop是下标,0开始,stop为-1代表到末尾
-
lindex key index 从左获取key对象的index索引处的值
-
llen key
-
lpop key 获取并弹出数据
-
rpop key
Set类型
Set类型就是Java的HashSet。特点:无序,去重,集合操作。
-
sadd key member1 [member2] 添加数据
-
smembers key 获取全部数据
-
srem key member1 [member2] 删除数据
-
scard key 获取集合数据总量
-
sismember key member 判断集合中是否包含指定数据
-
srandmember key [count] 随机获取集合中指定数量的数据
-
spop key [count] 随机获取集合中的某个数据并将该数据移出集合
-
sinter key1 [key2] 求两个集合的交、并、差集
-
sunion key1 [key2]
-
sdiff key1 [key2]
-
sinterstore destination key1 [key2] 求两个集合的交、并、差集并存储到指定集合中
-
sunionstore destination key1 [key2]
-
sdiffstore destination key1 [key2]
-
smove source destination member 将指定数据从原始集合中移动到目标集合中
Sorted_set类型(ZSet)
在Set的基础上添加了一个排序字段。
-
zadd key score1 member1 [score2 member2] 添加数据
-
zrange key start stop [WITHSCORES] 正序获取全部数据
-
zrevrange key start stop [WITHSCORES] 逆序获取全部数据
-
zrem key member [member ...] 删除数据
-
zrangebyscore key min max [WITHSCORES] [LIMIT] (这个命令的作用是返回有序集合 key 中分数在 min 和 max 之间的所有成员,按照分数从小到大的顺序排列。如果指定了 WITHSCORES 选项,那么还会返回每个成员的分数值。如果指定了 LIMIT 选项,那么还可以限制返回的成员数量和偏移量。 )
-
zrevrangebyscore key max min [WITHSCORES] 从大到小排序,并返回每个成员的分数值。
-
zremrangebyrank key start stop 条件删除数据
-
zremrangebyscore key min max
-
zcard key start stop 获取集合数据总量
-
zcount key min max
-
zrank key member 排序后,获取数据对应的索引(排名),从0开始
-
zrevrank key member
-
zscore key member score值获取与修改
-
zincrby key increment member
-
zinterstore destination numkeys key [key ...] 集合交、并操作,并存储 (numkeys 是参与运算的key的个数)
-
zunionstore destination numkeys key [key ...]