reids目前提供5種資料型別:string型別, list型別, set集合型別, 有序集合型別, hash型別
redis中的string在記憶體中都是按照乙個key對應乙個value來儲存的。如:
r.set(「name」, 「liaochao」)
示例:
結果:import redis
pool = redis.connectionpool(host="192.168.1.202", port=6379, db=0)
r = redis.redis(connection_pool=pool)
r.set("name","liaochao")
print(r.get("name"))
#批量插入
r.mset(name1="test1",name2="test2")
print (r.mget("name1","name2"))
print (r.get("name3"))
liaochao
test3
redis中的list在在記憶體中按照乙個name對應乙個list來儲存
lpush(name,values)
# 在name對應的list中新增元素,每個新的元素都新增到列表的最左邊
r.lpush(「list_name」,2)
r.lpush(「list_name」,3,4,5)#儲存在列表中的順序為5,4,3,2
rpush(name,values)
#同lpush,但每個新的元素都新增到列表的最右邊
lpushx(name,value)
#在name對應的list中新增元素,只有name已經存在時,值新增到列表的最左邊
rpushx(name,value)
#在name對應的list中新增元素,只有name已經存在時,值新增到列表的最右邊
llen(name)
# name對應的list元素的個數
print(r.llen(「list_name」))、
linsert(name,where,refvalue,value):在name對應的列表的某乙個值前後插入乙個新值
#引數:
# name,redis的name
# where,before或after
# refvalue,標桿值,即:在它前後插入資料
# value,要插入的資料
r.lset(name,index,value):對name對應的list中的某乙個索引位置重新賦值。
# 引數:
# name,redis的name
# index,list的索引位置
# value,要設定的值
r.lrem(name,value,num):在name對應的list中刪除指定的值
# 引數:
# name,redis的name
# value,要刪除的值
# num, num=0,刪除列表中所有的指定值;
# num=2,從前到後,刪除2個;
# num=-2,從後向前,刪除2個
示例:
結果:[『4』, 『3』, 『2』, 『test3』, 『test1』, 『ling』]import redis
pool = redis.connectionpool(host="192.168.1.202", port=6379, db=0)
r = redis.redis(connection_pool=pool)
# lpush 在list的左邊增加乙個元素 left
# rpush 在list的右邊增加乙個元素 right
r.lpush("list_name",2)
r.lpush("list1", "test1")
r.rpush("list1", "ling")
r.lpush("list1", "test2")
r.lpush("list1", "test3")
r.lpush("list1", "test2")
r.lpush("list1", 2, 3, 4)
r.lpush("list1", "test2")
r.lrem("list1","test2")
print(r.lrange("list1", 0, -1))
set集合就是不重複的列表
sadd(name,values)
#給name對應的集合中新增元素
r.sadd(「set_name」,」aa」)
r.sadd(「set_name」,」aa」,」bb」)
smembers(name)
#獲取name對應的集合的所有成員
scard(name)
#獲取name對應的集合中的元素個數
r.scard(「set_name」)
sinter(keys, *args)
# 獲取多個name對應集合的並集
r.sadd(「set_name」,」aa」,」bb」)
r.sadd(「set_name1」,」bb」,」cc」)
r.sadd(「set_name2」,」bb」,」cc」,」dd」)
print(r.sinter(「set_name」,」set_name1」,」set_name2」))
#輸出:{bb}
sismember(name, value)
#檢查value是否是name對應的集合內的元素
spop(name)
#從集合的右側移除乙個元素,並將其返回
sunion(keys, *args)
#獲取多個name對應的集合的並集
r.sunion(「set_name」,」set_name1」,」set_name2」)
srem(name, value) 刪除集合中的某個元素
r.srem(「set_name」, 「aa」)
示例:
結果import redis
pool = redis.connectionpool(host="192.168.1.202", port=6379, db=0)
r = redis.redis(connection_pool=pool)
r.sadd("set_name","aa")
r.sadd("set_name","aa","bb")
#檢視集合內所有元素
print r.smembers("set_name")
#檢視集合內元素個數
print r.scard("set_name")
r.srem("set_name","aa")
print r.smembers("set_name")
r.sadd("set_name1","aa","bb","cc")
#兩個集合的交集
print (r.sinter("set_name","set_name1"))
#兩個集合的並集
print(r.sunion("set_name","set_name1"))
set([『aa』, 『bb』])
2 set([『bb』])
set([『bb』])
set([『aa』, 『cc』, 『bb』])
Redis在SpringBoot的常用操作
我們一般情況下,使用redis或許更多還是去存session,但是redis還是有很多更廣遠的操作,這裡先列舉幾個比較簡單的和springboot的相結合的比較簡單的操作。redistemplate.opsforvalue set test 100 60 10,timeunit.seconds 向r...
Python操作Redis之二 Hash操作
2 hash 操作 redis中的hash 在記憶體中類似於乙個name對應乙個dic來儲存 hset name,key,value name對應的hash中設定乙個鍵值對 不存在,則建立,否則,修改 r.hset dic name a1 aa hget name,key r.hset dic na...
Redis常用命令 通用key value操作
1.keys pattern 查詢相應的key,pattern表示查詢條件,可以實現模糊查詢 通配任意多個字元,keys 表示返回當前redis資料庫中所有的key。通配任意乙個字元,比如已經有兩個key,分別是aba或abb,如果要查詢以ab開頭的後面只有乙個字元的key,就可以使用keys ab...