商城
redis
Redis 是一个高性能的key-value数据库,默认端口号未6379。
redis-server.exe redis.windows.conf
运行Redis服务器
redis-cli.exe
运行Redis客户端
值的类型分为五种
- 字符串string
- 哈希hash
- 列表list
- 集合set
- 有序集合zset
键值相关操作
-
设置键值
set key value
-
设置键值及过期时间,以秒为单位
setex key seconds value
-
设置多个键值
mset key1 value1 key2 value2 ...
-
获取:根据键获取值,如果不存在此键则返回
nil
get key
-
根据多个键获取多个值
mget key1 key2 ...
-
查找键,参数⽀持正则表达式
keys pattern
查看名称中包含a的键keys a*
判断键是否存在,如果存在返回1,不存在返回0exists key1
-
查看键对应的value的类型
type key
-
删除键及对应的值
del key1 key2 ...
-
如果没有指定过期时间则⼀直存在,直到使⽤DEL移除
expire key seconds
-
查看有效时间,以秒为单位
ttl key
hash类型
- 设置单个属性
hset key field value
- 设置多个属性
hmset key field1 value1 field2 value2 ...
- 获取指定键所有的属性
hkeys key
- 获取⼀个属性的值
hget key field
- 获取多个属性的值
hmget key field1 field2 ...
- 获取所有属性的值
hvals key
- 删除整个hash键及值,使⽤del命令
删除属性,属性对应的值会被⼀起删除hdel key field1 field2 ...
list类型
- 在左侧插⼊数据
lpush key value1 value2 ...
- 在右侧插⼊数据
rpush key value1 value2 ...
- 返回列表⾥指定范围内的元素
- start、stop为元素的下标索引
- 索引从左侧开始,第⼀个元素为0
- 索引可以是负数,表示从尾部开始计数,如-1表示最后⼀个元素
lrange key start stop
- 删除指定元素
- 将列表中前count次出现的值为value的元素移除
count >0
: 从头往尾移除count < 0
: 从尾往头移除count = 0
: 移除所有lrem key count value
set类型
⽆序集合
元素为string类型
元素具有唯⼀性,不重复
说明:对于集合没有修改操作
- 添加元素
sadd key member1 member2 ...
- 返回所有的元素
smembers key
- 删除指定元素
srem key
zset类型
sorted set,有序集合
元素为string类型
元素具有唯⼀性,不重复
每个元素都会关联⼀个double类型的score,表示权重,通过权重将元素从⼩到⼤排序
说明:没有修改操作
- 添加
zadd key score1 member1 score2 member2 ...
- 获取
返回指定范围内的元素
start、stop为元素的下标索引
索引从左侧开始,第⼀个元素为0
索引可以是负数,表示从尾部开始计数,如-1表示最后⼀个元素
zrange key start stop
- 删除指定元素
zrem key member1 member2 ...
python交互
引⼊模块
from redis import Redis
通过init创建对象,指定参数host、port与指定的服务器和端⼝连接,host默认为localhost,port默认为6379,db默认为0
sr = Redis(host='localhost', port=6379, db=0) #简写 sr=Redis()
string
1 | set |
keys
1 | exists |
hash
1 | hset |
list
1 | lpush |
set
1 | sadd |
zset
1 | zadd |