1. 程式人生 > >Redis基礎-常用命令

Redis基礎-常用命令

value sca 服務端 rim lis 二進制 服務 最大值 zset

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基礎-常用命令