String类型
保存
设置键值 set key value 例 set name sky
设置键值及其过期时间(以秒为单位) setx key seconds value 例 setex name 3 sky
设置多个键值 mset key1 value1 key2 value2,,, 例 mset name sky age 18
追加值 append key value 例 append love run
获取
根据键获取值 如果不存在此键则返回nil get key
根据多个键获取多个值 mget key1 key2,,,
删除 del key1、key2 (对应的值也会被删除)
键命令
查找键 参数支持正则表达式 keys pattem 例 查找所有 keys * 查找包含a的键 keys a
判断键是否存在,存在返回1,不存在返回0 exists key1
查看键对应的calue的类型 type key
设置过期时间 expire key seconds 例 expire name 3
查看过期时间,以秒为单位 ttl key
hash类型
hash用于存储对象,对象的结构为属性,值 值的类型为string
增加、修改
设置单个属性 hset key field value 例 hset user name sky
然后报出 Redis被配置为保存数据库快照,但它目前不能持久化到硬盘。用来修改集合数据的命令不能用
原因:强制干壁Redis快照导致不能持久化 解决方案:
运行config set stop-writes-on-bgsave-error no 命令后,关闭配置项stop-writes-on-bgsave-error解决该问题。
设置多个属性 hmset key field1 value1 field2 value2...
获取
获取指定键所有属性 hkeys key
获取一个属性的值 hget key field
获取多个属性的值 hmget key field1 field2 ...
获取所有属性的值 hvals key
删除
删除整个hash键和值,使用del命令
删除属性,属性对应的值会被一起删除 hdel key field1 filed2,,,
list类型
列表元素类型为string 按照插入顺序排序
增加
在左侧插入数据 lpush key value1 value2...
在右侧插入数据 rpush key value1 value2
在制定元素前或者后插入新元素 linsert key before或after 现有元素 新元素
获取
返回列表中指定范围内的元素 lrange key start stop 例 lrange name 0 8
- start、stop为元素下标索引
- 索引从左侧开始,第一个元素为0
- 索引可以是负数,标示从未不开始计数
删除
删除指定元素 lrem key count value
- 将列表中前count次出现的值为calue的元素移除
- count>0:从头往尾移除
- count <0 从尾往头移除
- count=0 移除所有
set类型
无序集合 元素为string类型 元素具有唯一性 对于集合没有修改操作
增加
添加元素 sadd key member1 member2 ...
获取
返货所有元素 smembers key
删除
删除指定元素 srem key
zset类型
sorted set,有序集合 元素为string类型 元素具有唯一性 每个元素都会关联一个double类型的score,标示权重,通过权重将元素从小到大排序 没有修改操作
增加
添加 zadd key score1 member1 score2 member2 ...
例:向键'a'的集合中添加元素'lisi'、'wangwu'、'zhaoliu'、'zhangsan',权重分别为4、5、6、3
zadd a 4 lisi 5 wangwu 6 zhaoliu 3 zhangsan
获取
返回指定范围内的元素 start、stop为元素的下标索引 zrange key start stop
返回score值在min和max之间的成员 zrangebyscore key min max
返回成员memcer的score值 在score key member
删除
删除指定元素 zrem key member1 member2 ...
删除权重在指定范围的元素 zremrangebyscore key min max