数据结构
redis是key-value的数据结构,每条数据都是一条字符串。注意:键的类型是字符串,并且不能重复。
值的类型分5种:
- 字符串string
- 哈希hash
- 列表list
- 集合set
- 有序集合
数据操作行为
- 保存
- 修改
- 获取
- 删除
sting类型
字符串类型的redis中最为基础的数据存储类型,在redis中是二进制安全的,可以接受任何格式的数据。在redis中字符串类型的value值最多可容纳的数据长度是512M。
保存
设置键值 set key value
设置键值和过期时间 setex key seconds value
设置多个键值 set key value1 value2 ...
追加属性值 append key value
获取
根据键获取值 get key
根据多个键获取值 get key1 key2
删除
删除键值对 del key
键命令
查看所有键 keys *
查看名称包含a的键 keys a*
判断键是否存在,存在返回1,不存在返回0 exists key
查看键对应的value类型 type key
删除键及对应的值 del key1 key2 ...
设置过期时间,单位为秒 expire key 过期时间
查看有效时间 ttl key
hash类型
hash用于存储对象,对象的结构为属性、值(string)
增加、修改
设置单个属性 hset key field value
例如:设置键 user的属性name为itheima hset user name itheima
设置多个属性 hset key field value1 value2 ...
获取
获取指定键所有的属性 hkeys key
获取一个属性的值 hget key field
获取多个属性的值 hget key field1 field2
获取所有属性的值 hget key
删除
删除属性 hdel key field1 field2...
list类型
按照插入顺序排序
增加
在左侧插入数据 lpush key value1 value2...
在右侧插入数据 rpush key value1 value2...
在指定元素的前后插入新元素 linsert key before或after 现有元素 新元素
设置指定索引位置的元素值 lset key index value
获取
返回列表里指定范围内的元素 lrange key 0 -1 # 按照索引值查找
删除
删除指定元素 lrem key count value #count>0:从左往右;count=0;移除所有:count<0:从尾往头移除。
set类型
无序集合,具有唯一性,不重复
增加
添加元素 sadd key member1 member2...
获取
返回所有元素 smembers key
删除
删除指定元素 srem key member1 member2...
zset类型
有序集合,有唯一性,每个元素都会关联一个double类型的score,表示权重,通过权重将元素按照从小到大排序
增加
添加 zadd key score1 member1 score2 member2...
获取
返回指定范围内的元素 zrange key start stop
返回权重值在min和max之间的成员 zrangebyscore key min max
返回成员们member的score值 zscore key member
删除
删除指定元素 zrem key member1 member2...
删除权重在指定范围内的元素 zremrangebyscore key min max
键命令
查看所有键 keys *
查看名称中包含a的键 keys a*
判断键是否存在
查找键
查找键