Redis五種數據類型


String類型操作

Hash類型操作

List類型操作

set類型操作

zset類型操作

通用命令

 

String類型操作

最常用的類型,典型的 k v 類型

set key value

設置string類型的數據

get key

根據key獲取value

getset key value

取值並設置值 如果沒有key則設置一個,如果有則取出值,並且賦值一個新的值。

incr key 

遞增value,但是value只能是數字。如果key不存在默認值為1

 

incrby key increment

遞增指定的步數

 

 

decr key

遞減value

decrby key increment

遞減步數

 

 

setnx key value

如果key不存在,才會添加,否則不添加

append key value

追加根據key追加value如果key不存在則創建

strlen key

根據key獲取value的長度

mset key value key value ...

一次設置多個key和value

 

mget key key key ...

獲取多個key

Hash類型操作

hash類型用於存儲對象類型,比如存一個person對象,如果一個對象需要頻繁的修改某些屬性,則可以存hash類型。當然也可以存string,不過需要將string變成json,而每一次修改屬性需要將value全部取出。

hset key field value

設置key和單個字段

hget key field

獲取key的字段

hmset key field value field value...

同時設置key的多個字段

hmget key field field...

同時獲取多個字段值

hgetall key

獲取key的所有屬性和值

hdel key field field...

刪除一個或多個字段

hsetnx key field value 

僅當字段不存在才設置字段,但只能設置一個字段

hincrby key field increment 

設置自增字段,但只能是數字,並且一次只能設置一個 field

hexists key field

獲取字段是否存在

hkeys key

獲取key所有的字段

hvals key

獲取key的所有字段值

hlen key

獲取key的字段數量

List類型操作

list類型key對應的value有多個他們是有序的(添加順序)並且list類型的元素可以有重復值。

lpush key value value value ...

從左邊添加元素,注意,不是追加而是從左邊添加

lrange key start stop

獲取list中的元素,從指定位置開始,指定位置結束,start下標從0開始stop為-1則表示直到最后一個。

 

rpush key value value

從集合右邊添加元素。

lpop key

從左邊移除一個元素,並且返回被移除的元素

rpop key

從右邊移除一個元素,並返回被移除的元素

llen key

獲取list的元素個數。

 

lrem key count value

刪除指定個數的指定value,例如list中有三個A (lrem list 2 value)則會刪除兩個A

- 當count>0時, LREM會從列表左邊開始刪除。
- 當count<0時, LREM會從列表后邊開始刪除。
- 當count=0時, LREM刪除所有值為value的元素。

  

lindex key index

獲取指定下標的元素

lset key index value

修改指定下標的值

 

ltrim key start end

只保留start到end其他的元素刪除

linsert key before|after pivot value

尋找指定value然后在此value的after或before添加指定的value

 

 

rpoplpush list1 list2

將list1中rpop的元素lpush到list2中。

 

set類型操作

set類型元素不可重復無序(添加順序)

sadd key value value ...

添加指定元素

smembers key

獲取所有元素

srem key value

刪除指定元素

 

sismember key value

判斷元素是否存在

card key

獲取元素個數

spop key

隨機彈出一個元素,注意彈出是返回並刪除。

sdiff key1 key2 ...

取差集,在A中有在B中沒有

sinter key1 key2 ...

取交集,在A中有在B中也有

sunion key1 key2

並集,取AB中所有的元素,但不重復

 

zset類型操作

在set的基礎上增加了一個分數

zadd key score value score value...

添加元素

zrange key start stop 

獲取start stop之間的元素(包含start stop)並且按照分數從小到大排序

zrevrange key start stop 

獲取start stop之間的元素(包含start stop)並且按照分數從大到小排序

 

zrank key value

獲取元素的排名從小到大

zrevrank key value

獲取元素的排名從大到小

zscore key value

獲取value的分數

zrem key value value...

移除指定元素若value不存在則不移除

zremrangebyrank key start end

刪除指定分數排名范圍的元素

 

zremrangebyscore key staet end

刪除指定分數范圍的元素

zrangebyscore key min max

獲取指定區間分數的值

zcount key min max

獲取指定分數范圍內的元素個數

zincrby key score value

增加value的分數

zcard key

獲取元素個數

通用命令

keys pattern

獲取匹配到的key

 

del key key...

刪除指定key

exists key 

判斷key是否存在

rename keyName keyName

重命名key

type key

獲取key類型

expire key seconds

key的過期時間設置,默認單位為秒

先設置一個key,然后設置過期時間

ttl key

查詢key的過期時間

persist key

清除過期時間,key不過期

 

pexpire key milliseconds

設置過期時間為毫秒

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM