Redis基礎-常用命令
Redis命令
一、redis的數據結構包括,字符串,hash值,list,set,zset
二、1.redis的單個命令是原子操作
2.list vs zset.zset支持快速的隨機訪問和兩端訪問。但是更耗內存
三、不同數據結構的命令
1.數據結構無關命令:
a.keys */?/[]
b../redis-server ../redis.conf 啟動redis服務端
c.select 1#選擇不同數據庫字典 默認啟動16個
d.del name#用於刪除key值,所有類型均可刪除
e.exists key#判斷key是否存在
2.string:
a.set name jack
b.get name
c.incr num #return 1
d.incrby num 2 # return 3
e.decr num #return 2
f.decrby num 5 # return -3
g.strlen num # return 2 返回字符串長度,中文字符需要考慮編碼
h.append num 2 # return -32 往字符串末尾添加字符串
i.incrybyfloat num -2.5#return -34.5增長浮點值,存在精度丟失
j.mget name num #return jack -34.5 只能用於獲取字符串類型
k.mset age 11 kiost 4#同時設置多個值
l.getbit name 0 #name的字符轉為ascii碼值,轉換為二進制存儲,獲取索引為0的值,一個字節8位二進制,不足補0
m.setbit age 0 1#設置age的字符串,二進制索引值0位為1
n.bitcount\bittop #擴展,使用時查表
3.hash
a.格式 hset key field value,hget key field
b.格式 hmget key field [field …],hmset key field value[field value]
c.hgetall key#返回field value的鍵值對
d.hexists key field#判斷key的field是否存在
e.hsetnx key field value #當field不存在時賦值
f.hincrby key field incrment #自增字段
g.hdel key field [field]#刪除一個或多個字段
h.hkeys key#獲取key對應的所有field
i.hvals key#獲取key對應的所有value
j.hlen key#獲取key的field個數
4.list
a.lpush key value[value …]#往list的左邊放值
b.rpush key value[value …]#往list的右邊放值
c.lpop key,rpop key #從左右兩端分別彈出值
d.llen key#獲取list的元素個數
e.lrange key start stop#獲取start-stop索引之間的值,含stop
f.lrem key count value
1.count>0 從左邊刪除count個值為value的元素
2.count=0 從左邊刪除所有值為value的元素
3.count<0 從右邊刪除所有值為value的元素
4.返回實際刪除的個數
g.lindex key index#返回list指定index的元素
h.lset key index value#設置list指定index的元素為value(index需要已經存在)
i.ltrim key start stop#刪除除start-stop外的值,stop保留
j.linsert key after|before pivot value
# 在key中找到pivot在after|befort 插入value
k.rpoplpush source destination#從source pop一個元素到dest
5.set
a.集合內的元素是無序的,唯一的,內部是空的散列表
b.sadd key member [member …]#向集合添加元素,返回實際添加的個數
c.srem key member [member …]#向集合刪除元素,返回實際刪除的個數
d.smembers key#獲取集合內的所有元素
e.sismember key member#判斷元素是否在集合中
f.sdiff key1 key2 #計算key1 key2的差集
g.sinter key1 key2 #計算key1 key2的交集
h.sunion key1 key2 #計算key1 key2的並集
i.集合之間的元素有三個及以上的,先取前兩個運算,結果依次與後續的集合運算
j.scard key#查詢集合的元素個數
k.sdiffstore destination key [key2]#結果存儲在destination
l.srandmember key count#獲取count個隨機的集合元素
m.spop key #隨機彈出一個元素
6.zset(-inf+ inf- score的最大值和最小值)
a.zadd key score member#添加元素
b.zscore key member#返回score
c.zrange key start stop[withscore]#獲取索引值為start-stop中的值,按score小到大排列,索引值為加入集合的順序。
d.zrevrange 從大到小排列展示
e.zincrby key incrment member#給key的元素增加incrment分
f.zcard key#元素的個數
g.zcount key min max#返回分數範圍內的元素個數
h.zrem key member[member]#刪除key的元素
i.zremrangebyrank key start stop#按分數的小到大,刪除start到stop的值
j.zremrangebyscore key min max#按分數刪除
k.zrank key member #獲取member的排名(分數)
l.zrevrank key member#獲取反向的排名
m.zinterstore destination numkeys key1 [key…] [weights weight[weight] ] [aggregate sum|min|max]#aggregate 默認sum
Redis基礎-常用命令