redis

string類型
設置鍵值
set key value
例1:設置鍵爲name值爲itcast的數據
set name itcast
設置鍵值及過期時間,以秒爲單位
setex key seconds value
例2:設置鍵爲aa值爲aa過期時間爲3秒的數據
setex aa 3 aa
設置多個鍵值
mset key1 value1 key2 value2 ...
例3:設置鍵爲'a1'值爲'python'、鍵爲'a2'值爲'java'、鍵爲'a3'值爲'c'
mset a1 python a2 java a3 c
追加值
append key value
例4:向鍵爲a1中追加值' haha'
append 'a1' 'haha'
獲取
獲取:根據鍵獲取值,如果不存在此鍵則返回nil
get key
例5:獲取鍵'name'的值
get 'name'
根據多個鍵獲取多個值
mget key1 key2 ...
例6:獲取鍵a1、a2、a3'的值
mget a1 a2 a3


鍵命令
查找鍵,參數⽀持正則表達式
keys pattern
例1:查看所有鍵
keys *
例2:查看名稱中包含a的鍵
keys 'a*'
查看鍵
判斷鍵是否存在,如果存在返回1,不存在返回0
exists key1
例3:判斷鍵a1是否存在
exists a1
查看鍵對應的value的類型
type key
例4:查看鍵a1的值類型,爲redis⽀持的五種類型中的⼀種
type a1
查看值類型
刪除鍵及對應的值
del key1 key2 ...
例5:刪除鍵a2、a3
del a2 a3
設置過期時間,以秒爲單位
如果沒有指定過期時間則⼀直存在,直到使⽤DEL移除
expire key seconds
例6:設置鍵'a1'的過期時間爲3秒
expire 'a1' 3
設置過期時間
查看有效時間,以秒爲單位
ttl key
例7:查看鍵'bb'的有效時間
ttl bb

hash類型
增加、修改
設置單個屬性
hset key field value
例1:設置鍵 user的屬性name爲itheima
hset user name itheima
設置多個屬性
hmset key field1 value1 field2 value2 ...
例2:設置鍵u2的屬性name爲itcast、屬性age爲11
hmset u2 name itcast age 11
獲取
獲取指定鍵所有的屬性
hkeys key
例3:獲取鍵u2的所有屬性
hkeys u2
獲取一個屬性的值
hget key field
例4:獲取鍵u2屬性'name'的值
hget u2 'name'
獲取多個屬性的值
hmget key field1 field2 ...
例5:獲取鍵u2屬性'name'、'age的值
hmget u2 name age
獲取所有屬性的值
hvals key
例6:獲取鍵'u2'所有屬性的值
hvals u2
刪除
刪除整個hash鍵及值,使⽤del命令
刪除屬性,屬性對應的值會被⼀起刪除
hdel key field1 field2 ...
例7:刪除鍵'u2'的屬性'age'
hdel u2 age


list類型
在左側插⼊數據
lpush key value1 value2 ...
例1:從鍵爲'a1'的列表左側加⼊數據a 、 b 、c
lpush a1 a b c
在右側插⼊數據
rpush key value1 value2 ...
例2:從鍵爲'a1'的列表右側加⼊數據0 1
rpush a1 0 1
在指定元素的前或後插⼊新元素
linsert key before或after 現有元素 新元素
例3:在鍵爲'a1'的列表中元素'b'前加⼊'3'
linsert a1 before b 3
獲取
返回列表⾥指定範圍內的元素
start、stop爲元素的下標索引
索引從左側開始,第⼀個元素爲0
索引可以是負數,表示從尾部開始計數,如-1表示最後⼀個元素
lrange key start stop
例4:獲取鍵爲'a1'的列表所有元素
lrange a1 0 -1
設置指定索引位置的元素值
索引從左側開始,第⼀個元素爲0
索引可以是負數,表示尾部開始計數,如-1表示最後⼀個元素
lset key index value
例5:修改鍵爲'a1'的列表中下標爲1的元素值爲'z'
lset a 1 z
刪除
刪除指定元素
將列表中前count次出現的值爲value的元素移除
count > 0: 從頭往尾移除
count < 0: 從尾往頭移除
count = 0: 移除所有
lrem key count value
例6.1:向列表'a2'中加⼊元素'a'、'b'、'a'、'b'、'a'、'b'
lpush a2 a b a b a b
例6.2:從'a2'列表右側開始刪除2個'b'
lrem a2 -2 b
例6.3:查看列表'py12'的所有元素
lrange a2 0 -1


set類型
⽆序集合
元素爲string類型
元素具有唯⼀性,不重複
說明:對於集合沒有修改操作
添加元素
sadd key member1 member2 ...
例1:向鍵'a3'的集合中添加元素'zhangsan'、'lisi'、'wangwu'
sadd a3 zhangsan sili wangwu
獲取
返回所有的元素
smembers key
例2:獲取鍵'a3'的集合中所有元素
smembers a3
刪除
刪除指定元素
srem key
例3:刪除鍵'a3'的集合中元素'wangwu'
srem a3 wangwu


zset類型
sorted set,有序集合
元素爲string類型
元素具有唯⼀性,不重複
每個元素都會關聯⼀個double類型的score,表示權重,通過權重將元素從⼩到⼤排序
說明:沒有修改操作

添加
zadd key score1 member1 score2 member2 ...
例1:向鍵'a4'的集合中添加元素'lisi'、'wangwu'、'zhaoliu'、'zhangsan',權重分別爲4、5、6、3
zadd a4 4 lisi 5 wangwu 6 zhaoliu 3 zhangsan
獲取

返回指定範圍內的元素
start、stop爲元素的下標索引
索引從左側開始,第⼀個元素爲0
索引可以是負數,表示從尾部開始計數,如-1表示最後⼀個元素
zrange key start stop
例2:獲取鍵'a4'的集合中所有元素
zrange a4 0 -1
返回score值在min和max之間的成員
zrangebyscore key min max
例3:獲取鍵'a4'的集合中權限值在5和6之間的成員
zrangebyscore a4 5 6
返回成員member的score值
zscore key member
例4:獲取鍵'a4'的集合中元素'zhangsan'的權重
zscore a4 zhangsan
刪除
刪除指定元素
zrem key member1 member2 ...
例5:刪除集合'a4'中元素'zhangsan'
zrem a4 zhangsan
獲取
刪除權重在指定範圍的元素
zremrangebyscore key min max
例6:刪除集合'a4'中權限在5、6之間的元素
zremrangebyscore a4 5 6

StrictRedis對象⽅法

通過init創建對象,指定參數host、port與指定的服務器和端⼝連接,host默認爲localhost,port默認爲6379,db默認爲0
sr = StrictRedis(host='localhost', port=6379, db=0)

簡寫
sr=StrictRedis()
根據不同的類型,擁有不同的實例⽅法可以調⽤,與前⾯學的redis命令對應,⽅法需要的參數與命令的參數⼀致
string

set 設置鍵值
setex 設置鍵值及過期時間
mset 設置多個鍵值
append 追加值
get 獲取
mget 獲取多個值
key
keys 查找鍵,參數⽀持正則表達式

exists 判斷鍵是否存在
type 查看鍵對應的value的類型
delete 刪除鍵及對應的值del key1 key2 ...
expire 設置過期時間,以秒爲單位
getrange
ttl 查看有效時間,以秒爲單位

hash
hset 設置單個屬性
hmset 設置多個屬性
hkeys 獲取指定鍵所有的屬性
hget 獲取一個屬性的值
hmget 獲取多個屬性的值
hvals 獲取所有屬性的值
hdel 刪除屬性

list
lpush 從鍵爲'a1'的列表左側加⼊數據
rpush 在右側插⼊數據
linsert 在指定元素的前或後插⼊新元素 linsert key before或after 現有元素 新元素
lrange 獲取鍵爲'a1'的列表所有元素 lrange a1 0 -1
lset 設置指定索引位置的元素值
lrem 刪除指定元素 lrem key count value

set
sadd 添加元素
smembers 返回所有的元素
srem 刪除指定元素 srem key

zset
zadd 添加 zadd key score1 member1 score2 member2
zrange 返回指定範圍內的元素start、stop爲元素的下標索引
zrangebyscore 返回score值在min和max之間的成員
zscore 返回成員member的score值
zrem 刪除指定元素
zremrangebyscore 刪除權重在指定範圍的元素 zremrangebyscore key min max

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章