2.Redis数据操作
- redis是key-value的數據結構,每條數據都是一個鍵值對
- 鍵的類型是字符串
- 注意:鍵不能重復
- 值的類型分為五種:
- 字符串string
- 哈希hash
- 列表list
- 集合set
- 有序集合zset
?
string(主要
- string是redis最基本的類型
- 最大能存儲512MB數據
- string類型是二進制安全的,可以存儲任何數據,比如數字、圖片等
?
增加、修改
- 如果設置的鍵不存在則為添加,如果設置的鍵已經存在則修改
- 設置鍵值:set key value
設置鍵值及過期時間,以秒為單位
setex key secondsvalue
設置多個鍵值
mset key1 value1key2 value2 ...
追加值:append keyvalue
?
獲取
- 獲取:根據鍵獲取值,如果不存在此鍵則返回nil
get key
?
- 根據多個鍵獲取多個值
mget key1 key2 ...
?
?
鍵命令
- 查找鍵,參數支持正則表達式
keys pattern
- 判斷鍵是否存在,如果存在返回1,不存在返回0
exists key1
- 查看鍵對應的value的類型
type key
- 刪除鍵及對應的值
del key1 key2 ...
- 設置過期時間,以秒為單位
- 如果沒有指定過期時間則一直存在,直到使用DEL移除
expire key seconds
- 查看有效時間,以秒為單位(-2表示過期,-1表示永久
ttl key
?
hash(主要
- hash用于存儲對象,對象的結構為屬性、值
- 值的類型為string
?
增加、修改
- 設置單個屬性
hset key fieldvalue
?
- 設置多個屬性
hmset key field1value1 field2 value2 ...
?
獲取
- 獲取指定鍵所有的屬性
hkeys key
- 獲取一個屬性的值
hget key field
- 獲取多個屬性的值
hmget key field1field2 ...
- 獲取所有屬性的值
hvals key
?
刪除
- 刪除整個hash鍵及值,使用del命令
- 刪除屬性,屬性對應的值會被一起刪除
hdel key field1field2 …
?
list
- 列表的元素類型為string
- 按照插入順序排序
增加
- 在左側插入數據
lpush key value1 value2 ...
- 在右側插入數據
rpush key value1 value2 ...
- 在指定元素的前或后插入新元素
linsert keybefore或after 現有元素 新元素
獲取
- 返回列表里指定范圍內的元素
- start、stop為元素的下標索引
- 索引從左側開始,第一個元素為0
- 索引可以是負數,表示從尾部開始計數,如-1表示最后一個元素
lrange key start stop
修改
- 設置指定索引位置的元素值
- 索引從左側開始,第一個元素為0
- 索引可以是負數,表示尾部開始計數,如-1表示最后一個元素
lset key index value
刪除
- 刪除指定元素
- 將列表中前count次出現的值為value的元素移除
- count > 0: 從頭往尾移除
- count < 0: 從尾往頭移除
- count = 0: 移除所有
lrem key count value
?
set
- 無序集合
- 元素為string類型
- 元素具有唯一性,不重復
- 說明:對于集合沒有修改操作
增加
- 添加元素
sadd key member1 member2 ...
獲取
- 返回所有的元素
smembers key
刪除
- 刪除指定元素
srem key member
?
zset
- sorted set,有序集合
- 元素為string類型
- 元素具有唯一性,不重復
- 每個元素都會關聯一個double類型的score,表示權重,通過權重將元素從小到大排序
- 說明:沒有修改操作
?
增加
- 添加
zadd key score1 member1 score2 member2 ...
?
獲取
- 返回指定范圍內的元素
- start、stop為元素的下標索引
- 索引從左側開始,第一個元素為0
- 索引可以是負數,表示從尾部開始計數,如-1表示最后一個元素
zrange key start stop
- ?
- 返回score值在min和max之間的成員
zrangebyscore key min max
?
- 返回成員member的score值
zscore key member
?
刪除
- 刪除指定元素
zrem key member1 member2 ...
- ?
- 刪除權重在指定范圍的元素
zremrangebyscore key min max
總結
以上是生活随笔為你收集整理的2.Redis数据操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python中的深浅拷贝
- 下一篇: python操作MySQL 模拟简单银行