欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Redis不同數(shù)據(jù)類型的命令語(yǔ)句詳解

 更新時(shí)間:2022年10月09日 14:54:51   作者:正大光明瑞士卷  
這篇文章主要介紹了Redis不同數(shù)據(jù)類型的命令語(yǔ)句,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

一、String

String是Redis最基本的類型,最大能存儲(chǔ)512MB的數(shù)據(jù),String類型是二進(jìn)制安全的,即可以存儲(chǔ)人了數(shù)據(jù)類型,比如數(shù)字、圖片、序列化對(duì)象等

Ⅰ、set、get、append、strlen、exists

append key value
#追加鍵值,并返回追加后的長(zhǎng)度(若鍵不存在,則相當(dāng)于創(chuàng)建鍵)
exists key [key...]
#判斷該鍵是否存在,存在返回1,否則返回0
set key value [expiration EX seconds|PX milliseconds] [NX|XX]
#創(chuàng)建鍵
get key
#查看鍵值
strlen key
#獲取指定key的字符長(zhǎng)度

Ⅱ、incr、decr、incrby、decrby

需要值為整數(shù),否則會(huì)報(bào)錯(cuò)

incr key
#鍵值增1
decr key
#鍵值減1
incrby key increment
#鍵值增加指定值
decrby key increment
#鍵值減少指定值

Ⅲ、getset、setnx

GETSET key value
#獲取key值并返回,同時(shí)給key設(shè)置新值
 
SETNX key value
#不存在鍵的話執(zhí)行set操作,存在的話不執(zhí)行

Ⅳ、setex、ttl

setex key seconds value
#設(shè)置指定key的過(guò)期時(shí)間為指定值
 
ttl key  
#tt1命令查看指定Key的剩余存活時(shí)間(秒數(shù)),0表示已經(jīng)過(guò)期,-1表示永不過(guò)期。獲取已過(guò)
期的Key將返回(nil)

Ⅴ、mget、mset、msetnx

MSET key value [key value …]
#批量設(shè)置鍵-值對(duì)
 
MGET key [key …]
#批量獲取鍵值對(duì)
 
MSETNX key value [key value …]
#批量設(shè)置鍵值對(duì),都不存在就執(zhí)行并返回1;只要有一個(gè)存在就不執(zhí)行并返回0

二、List

列表的元素類型為String,按照插入順序在列表的頭部和尾部添加元素

Ⅰ、lpush、lpushx、lrange

LPUSH key value [value …]
#在頭部(左側(cè))依次插入列表元素 
 
LPUSHX key value
#鍵必須存在才能執(zhí)行,在頭部插入元素值并返回并返回列表元素?cái)?shù)量
 
LRANGE key start stop
#取從位置索引start到位置索引stop的所有元素(所以以0開(kāi)始)
lrange key 0 -1 
#展示所有

Ⅱ、lpop、llen

lpop key
#移除并返回鍵的第一個(gè)元素
 
llen key 
#獲取表中元素?cái)?shù)量

Ⅲ、lrem、lset、lindex、ltrim

lrem key count value
#從頭部開(kāi)始刪除count個(gè)為value的元素,并返回實(shí)際刪除數(shù)量
lset key index value
#將位置索引為index的元素設(shè)置新值value
lindex key index
#獲取索引為index的元素
ltrim key start stop
#僅保留從位置索引start到索引stop的元素

 lrem刪除一個(gè)符合value為a的值

lset將索引為1(從0開(kāi)始,即第二個(gè))的元素替換為新值a,獲取索引為2的元素

 只保留索引0~2的元素

 Ⅳ、linsert

LINSERT key BEFORE|AFTER pivot value
#在元素pivot的前面(做左)或后面(右)插入新元素value

 在c前面插入b

 Ⅴ、rpush、rpushx、rpop、rpoplpush

RPUSH key value [value …]
#在列表的尾部依次插入value
 
RPUSHX key value
#key必須存在才可執(zhí)行,將value從尾部插入,并返回所有元素?cái)?shù)量
 
RPOP key
#在尾部彈出(移除)一個(gè)元素,并返回該元素
 
RPOPLPUSH source destination
#在key1的尾部彈出一個(gè)元素并返回,將它插入key2的頭部

 rpush從test尾部依次插入jklmn

rpop尾部第一個(gè)元素 

 將test的尾部元素m彈出,同時(shí)再插入到test1的頭部(原子性的完成這兩步操作),也可以作用在test自己身上,將最后一個(gè)元素提到第一個(gè)

三、Hash

Hash用于存儲(chǔ)對(duì)象,可以采用這樣的命名方式(hash格式):對(duì)象列別和ID構(gòu)成鍵名,使用字段表示對(duì)象的屬性,而字段值則存儲(chǔ)屬性值

Ⅰ、hset、hget、hexisits、hdel、hlen、hsetnx

hset key field value
#創(chuàng)建key
 
hget key field
#獲取key-value
 
hexists key field
#key是否存在
 
hdel key field [field ...]
#刪除指定key
 
hlen key
#key字段數(shù)
 
hsetnx key field value
#不重復(fù)的創(chuàng)建key,即只有指定的key不存在才可以創(chuàng)建

Ⅱ、hincrby

hincrby key field increment
#給指定的hash類型(整數(shù))值指定增長(zhǎng)值

 key hash kk字段設(shè)值為4,hincrby1后kk值為5

Ⅲ、hgetall、hkeys、hvals、hmset、hmget

hgetall key
#輸出指定字段的所有字段以及值
 
hkeys key
#輸出指定鍵中的所有字段名
 
hvals key
#輸出指定鍵中的所有字段值
 
hmset key field value [field value ...]
#一次性設(shè)置多個(gè)字段
 
hmget key field [field ...]
#一次性獲取多個(gè)字段

四、set

無(wú)序集合,元素類型為string類型,元素具有唯一性,不允許存在重復(fù)的成員。多個(gè)集合類型之間可以進(jìn)行并集、交集和差集運(yùn)算

應(yīng)用范圍:

可以使用Redis的Set數(shù)據(jù)類型跟蹤一些唯一性數(shù)據(jù),比如訪問(wèn)某一博客的唯一IP地址信息。對(duì)于此場(chǎng)景,我們僅需在每次訪問(wèn)該博客時(shí)將訪問(wèn)者的IP存入Redis中,Set數(shù)據(jù)類型會(huì)自動(dòng)保證IP地址的唯一性。充分利用Set類型的服務(wù)端聚合操作方便、高效的特性,可以用于維護(hù)數(shù)據(jù)對(duì)象之間的關(guān)聯(lián)關(guān)系。比如購(gòu)買某一電子設(shè)備的客戶ID被存儲(chǔ)在一個(gè)指定的Set中,而購(gòu)買另外一種電子產(chǎn)品的客戶ID被存儲(chǔ)在另外一個(gè)Set中,如果此時(shí)我們向獲取有哪些客戶同時(shí)購(gòu)買了這兩種商品時(shí),Set的intersections命令就可以充分發(fā)揮它的方便和效率的優(yōu)勢(shì)

Ⅰ、sadd、smembers、scard、sismember

sadd key member [member ...]
#創(chuàng)建鍵并加入member
 
smembers key
#查看指定key中所有的members
 
scard key
#查看指定key中members個(gè)數(shù)
 
sismember key member
#判斷指定key中的member是否存在

創(chuàng)建key-set,members為qq、ww、ee、rr,判斷qq在其中返回1,判斷pp不在其中返回0 

 Ⅱ、spop、srem、srandmember、smove

spop key [count]
#隨機(jī)的移除并返回key中的某一成員
 
srem key member [member ...]
#從指定key中移除指定member
 
srandmember key [count]
#隨機(jī)輸出指定數(shù)量的members
 
smove source destination member
#將一個(gè)member移動(dòng)到另一個(gè)key中

 五、Sorted Set

有序集合,元素類型為string,元素具有唯一性,不能重復(fù)。每個(gè)元素都會(huì)關(guān)聯(lián)一個(gè)double類型的分?jǐn)?shù)score(表示權(quán)重),可以通過(guò)權(quán)重的大小排序,元素的score可以相同

應(yīng)用范圍:

可以用于一個(gè)大型在線游戲的積分沛航胖,每當(dāng)玩家的分?jǐn)?shù)發(fā)生變化時(shí),可以執(zhí)行ZADD命令更新玩家的分?jǐn)?shù),此后再通過(guò)ZRANGE命令獲取積分TOP10的用戶信息。當(dāng)然我們也可以利用ZRANK命令通過(guò)usename來(lái)獲取玩家的排行信息。最后我們將組合使用ZRANGE和ZRANK命令快速的獲取和某個(gè)玩家積分相近的其他用戶的信息。Sorted-Set類型還可用于構(gòu)建索引數(shù)據(jù)

Ⅰ、zadd、zcard、zcount、zrem、zincrby、zscore、zrange、zrank

zadd key [NX|XX] [CH] [INCR] score member [score member ...]
#向有序集合內(nèi)添加members,或更新已存在的score
 
zcard key
#獲取key中的members數(shù)量
 
zcount key min max
#輸出滿足 min <= score <= max 條件的成員數(shù)量
 
zrem key member [member ...]
#刪除成員member并返回操作后的成員數(shù)量
 
zincrby key increment member
#讓指定的成員以指定increment增加
 
zrange key start stop [WITHSCORES]
#查看成員,從0開(kāi)始
 
zrank key member
#獲取成員的索引位置

Ⅱ、zrangebyscore、zremrangebyrank、zremrangebyscore

zrangebyscore key min max [WITHSCORES] [LIMIT offset count]
#獲取滿足min <= score <= max 的成員
 
zremrangebyrank key start stop
#刪除滿足min <= rank <= max 的成員
 
zremrangebyscore key min max
#刪除滿足min <= score <= max 的成員

Ⅲ、zrevrange、zrevrangebyscore、zrevrank

zrevrange key start stop [WITHSCORES]
#以位置索引從高到低的方式獲取并返回此區(qū)間內(nèi)的成員
 
zrevrangebyscore key max min [WITHSCORES] [LIMIT offset count]
#獲取滿足 min <= score <= max 的成員
 
zrevrank key member
#獲取指定成員的索引位置

到此這篇關(guān)于Redis不同數(shù)據(jù)類型的命令語(yǔ)句詳解的文章就介紹到這了,更多相關(guān)Redis命令語(yǔ)句內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解Redis中地理位置功能Geospatial的應(yīng)用

    詳解Redis中地理位置功能Geospatial的應(yīng)用

    Geospatial?Indexes?是?Redis?提供的一種數(shù)據(jù)結(jié)構(gòu),用于存儲(chǔ)和查詢地理位置信息,這篇文章就來(lái)和大家詳細(xì)講講Geospatial的具體應(yīng)用吧
    2023-06-06
  • Redis list 類型學(xué)習(xí)筆記與總結(jié)

    Redis list 類型學(xué)習(xí)筆記與總結(jié)

    這篇文章主要介紹了Redis list 類型學(xué)習(xí)筆記與總結(jié),本文著重講解了關(guān)于List的一些常用方法,比如lpush 方法、lrange 方法、rpush 方法、linsert 方法、 lset 方法等,需要的朋友可以參考下
    2015-06-06
  • redis?lua限流算法實(shí)現(xiàn)示例

    redis?lua限流算法實(shí)現(xiàn)示例

    這篇文章主要為大家介紹了redis?lua限流算法實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • Redis Cluster Pipeline導(dǎo)致的死鎖問(wèn)題解決

    Redis Cluster Pipeline導(dǎo)致的死鎖問(wèn)題解決

    本文主要介紹了Redis Cluster Pipeline導(dǎo)致的死鎖問(wèn)題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-10-10
  • redis?setIfAbsent返回null的問(wèn)題及解決

    redis?setIfAbsent返回null的問(wèn)題及解決

    這篇文章主要介紹了redis?setIfAbsent返回null的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • 記錄一次并發(fā)情況下的redis導(dǎo)致服務(wù)假死的問(wèn)題解決

    記錄一次并發(fā)情況下的redis導(dǎo)致服務(wù)假死的問(wèn)題解決

    由于Redis需要依賴于操作系統(tǒng)環(huán)境,如果系統(tǒng)資源受限,比如過(guò)量的進(jìn)程在擠占系統(tǒng)資源、系統(tǒng)死鎖等情況,本文主要介紹了記錄一次并發(fā)情況下的redis導(dǎo)致服務(wù)假死的問(wèn)題解決,感興趣的可以了解一下
    2023-09-09
  • Redis Value過(guò)大問(wèn)題(鍵值過(guò)大)

    Redis Value過(guò)大問(wèn)題(鍵值過(guò)大)

    這篇文章主要介紹了Redis Value過(guò)大問(wèn)題(鍵值過(guò)大),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • redis分布式鎖的問(wèn)題與解決方法

    redis分布式鎖的問(wèn)題與解決方法

    這篇文章主要給大家介紹了關(guān)于redis分布式鎖的問(wèn)題與解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用redis具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Redis請(qǐng)求處理的流程分析

    Redis請(qǐng)求處理的流程分析

    這篇文章主要介紹了Redis?是如何進(jìn)行請(qǐng)求處理,這篇文章介紹了整個(gè)?Redis?的請(qǐng)求處理模型到底是怎樣的。從注冊(cè)監(jiān)聽(tīng)?fd?事件到執(zhí)行命令,到最后將數(shù)據(jù)回寫給客戶端都做了個(gè)大概的分析,需要的朋友可以參考下
    2022-07-07
  • redis.conf中使用requirepass不生效的原因及解決方法

    redis.conf中使用requirepass不生效的原因及解決方法

    本文主要介紹了如何啟用requirepass,以及啟用requirepass為什么不會(huì)生效,從代碼層面分析了不生效的原因,以及解決方法,需要的朋友可以參考下
    2023-07-07

最新評(píng)論