Redis数据库
Redis 是一个高性能的key-value数据库
主要用Redis实现缓存数据的存储,可以设置过期时间.对于一些高频读写、临时存储的数据特别适合
性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s
-
redis String基本使用
- 设置键值
set key value
例:set name yuhao 设置 键为name,值为yuhao的数据
- 设置键值及过期时间,以秒为单位
Setex key seconds value
例:setex aa 3 aa 设置 键为aa, 值为aa 的数据,过期时间为3秒
- 获取:根据键获取值,如果不存在则此键返回nil
get key
例:get ’name‘ 获取键 ’name‘的值
- 查找键,参数支持正则表达式
Keys pattern
例:keys * 查看所有的键
- 删除键及对于的值
del key1 key2
- 清除redis数据库数据
flushall
-
redis List类型使用
一. 添加数据(范围控制)
1. 修剪(trim)一个已经存在的list ltrim 与lpush 联合使用 **ltrim key start stop ** (修剪范围的控制) 例:pipline.ltrim(key, 0, 5) # 最多只保存5条浏览记录
- 添加新的数据
lpush key value [value….] 从列表的左边入队,添加一个或多个数据 例:pipline.lpush(key, name)
- 获取存储在redis中的数据
Lrange key start stop 从列表中获取指定的返回元素 0(表示list的开头);-1(表示列表的最后一个元素) 例:conn.lrange(name, 0, 5)
- 移除列表中的数据
lrem key count value 删除列表数据 count>0:表示从头往尾移除值为 value 的元素 count<0:表示从尾往头移除值为 value的元素 count=0:表示移除所有值为value的元素 例: lrem(name,0,yuhao)
-
redis Set(集合)类型使用
- 添加数据
sadd key member[member…] 集合添加数据,可以添加多个数据,集合去重 例:pipline.sadd(user, user_id)
- 获取数据
**smembers key ** 获取返回key集合所有的数据 例:conn.smembers(user)
- 删除数据
srem key member[member….] 从集合删除一个或多个数据 例:pl.srem(user_id, name)
-
redis Hash 类型使用
-
添加数据(数量关系的储存)
hincrby key filed increment key:自定义key与哈希集关联 例:pipline.hincrby(user_id, ski_id, count) key:{filled:increment}
-
获取数据
hgetall key 返回key 指定的哈希集合所有的字段和值 例:conn.hgetall(user_id) 》{sku_id:11, sku_id:12}
-
Hset 设置hash里面一个字段的值
**hset key filed value ** 修改key指定哈希集合里面——filed值的value 例:pipline.hset(user_id, sku_id,count) redis> HSET myhash field1 "Hello" (integer) 1 redis> HGET myhash field1 "Hello"
-
Hmset 设置key指定的哈希集中指定字段的值
该命令将重写所有在哈希集中存在的字段 如果key 指定的哈希集不存在,会创建一个新的哈希集并与 key 关联 Hmset key filed value[filed value…] 例:pipeline.hmset(user_id, cart) 写入多个数据:{sku_id:count ,sku_id2:count} 不存在,则添加,存在重写存在的key
-
Hdel 删除数据
hdel key field [field…] 删除一个或者多个hash的field 例: pipline.hdel(user_id, sku_id) 删除hash的field(删除一个或者多个)
-
转自 weixin_34205826
https://blog.csdn.net/weixin_34205826/article/details/90911720