亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長(zhǎng)資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    Redis的五種數(shù)據(jù)類型總結(jié)

    本篇文章給大家?guī)?lái)了關(guān)于Redis的相關(guān)知識(shí),其中主要介紹了關(guān)于數(shù)據(jù)類型的相關(guān)問(wèn)題,包括了字符串類型、哈希類型、列表類型、集合類型和有序集合,下面一起來(lái)看一下,希望對(duì)大家有幫助。

    Redis的五種數(shù)據(jù)類型總結(jié)

    推薦學(xué)習(xí):Redis視頻教程

    1.Redis的5種數(shù)據(jù)類型

    redis是一種高級(jí)的key-value的存儲(chǔ)系統(tǒng),其中value支持五種數(shù)據(jù)類型:

    Redis支持的鍵值數(shù)據(jù)類型

    string字符串類型

    hash表類型

    list 列表類型

    set 集合類型

    zset 有序集合類型

    1. 關(guān)于key的定義,注意如下幾點(diǎn):
    1. 不建議key名字太長(zhǎng),通常不超過(guò)1024,如果太長(zhǎng)會(huì)影響查詢的速度。
    2. 不建議太短,太短會(huì)降低可讀性。
    3. 一般在公司,都有統(tǒng)一命名規(guī)范。

    2.字符串類型string

    2.1概述

    字符串類型是Redis中最為基礎(chǔ)的數(shù)據(jù)存儲(chǔ)類型,它在Redis中以二進(jìn)制保存,沒(méi)有編碼和解碼的過(guò)程。無(wú)論存入的是字符串、整數(shù)、浮點(diǎn)類型都會(huì)以字符串寫入。在Redis中字符串類型的Value最多可以容納的數(shù)據(jù)長(zhǎng)度是512M。這是以后最常用的數(shù)據(jù)類型。

    Redis的五種數(shù)據(jù)類型總結(jié)

    2.2常用命令

    命令

    行為

    set 鍵

    向redis數(shù)據(jù)庫(kù)中添加1個(gè)字符串類型的鍵和值,返回OK表示添加成功。同名的會(huì)替換

    get 鍵

    從數(shù)據(jù)庫(kù)中取出一個(gè)指定鍵的值,如果有返回值,如果沒(méi)有返回nil

    del 鍵

    刪除指定的鍵和值,如果刪除成功,返回刪除的個(gè)數(shù)。否則返回0

    setnx 鍵

    在指定的 key 不存在時(shí),為 key 設(shè)置指定的值。
    設(shè)置成功,返回 1 。 設(shè)置失敗,返回 0 。

    2.3命令演示

    需求:

    1. 添加一個(gè)鍵為company,值為itcast
    2. 再設(shè)置一個(gè)鍵為company,值為heima
    3. 得到company的元素
    4. 刪除company元素
    5. 再次刪除company看返回值是否相同
    6. 得到company看返回值是多少
    7. 設(shè)置鍵為job,值為programmer
    8. 再次設(shè)置job的值為code-farmer,查詢job的值

    2.4執(zhí)行效果

    Redis的五種數(shù)據(jù)類型總結(jié)

    3.哈希類型hash

    3.1概述

    Redis中的Hash類型可以看成具String的鍵和String的值Map容器,每一個(gè)Hash可以存儲(chǔ)40億個(gè)鍵值對(duì)。

    Redis的五種數(shù)據(jù)類型總結(jié)

    所以該類型非常適合于存儲(chǔ)對(duì)象的信息。如一個(gè)用戶有姓名,密碼,年齡等信息,則可以有username、password和age等鍵它的存儲(chǔ)結(jié)構(gòu)如下:

    Redis的五種數(shù)據(jù)類型總結(jié)

    3.2常用命令

    命令

    行為

    hset 鍵 字段 值

    向指定的鍵中添加一對(duì)hash類型的字段名和值

    hget 鍵 字段

    取出指定鍵的指定字段的值

    hmset 鍵 字段 值 字段 值

    mulitple,一次向某個(gè)鍵中設(shè)置多個(gè)字段名和值

    hmget 字段 字段

    一次從指定的鍵中得到多個(gè)字段的值

    hdel 鍵 字段 字段

    刪除一個(gè)鍵中的一個(gè)或多個(gè)字段

    hgetall 鍵

    得到某個(gè)鍵所有的字段值

    3.3命令演示

    需求:

    創(chuàng)建hash類型的鍵為user,并且添加一個(gè)字段為username,值為newboy

    向user中添加字段為password,值為12345

    向user中添加字段為age,值為18

    分別得到user中的username、password和age的字段值

    Redis的五種數(shù)據(jù)類型總結(jié)

    向user中同時(shí)添加多個(gè)字段和值,birthday 2018-01-01 sex male

    Redis的五種數(shù)據(jù)類型總結(jié)

    同時(shí)取得多個(gè)字段:age 和 sex

    Redis的五種數(shù)據(jù)類型總結(jié)

    得到user中所有的字段和值

    Redis的五種數(shù)據(jù)類型總結(jié)

    刪除user中的生日和密碼字段

    Redis的五種數(shù)據(jù)類型總結(jié)

    4.列表類型list

    4.1概述

    在Redis中,List類型是按照插入順序排序的字符串鏈表。和數(shù)據(jù)結(jié)構(gòu)中的普通鏈表一樣,我們可以在其左部(left)和右部(right)添加新的元素。在插入時(shí),如果該鍵并不存在,Redis將為該鍵創(chuàng)建一個(gè)新的鏈表,如果這個(gè)鍵已經(jīng)存在,則是向list添加元素。與此相反,如果鏈表中所有的元素均被移除,那么該鍵也將會(huì)被從數(shù)據(jù)庫(kù)中刪除。List中可以包含的最大元素?cái)?shù)量是40億個(gè)。

    Redis的五種數(shù)據(jù)類型總結(jié)

    4.2常用命令

    命令

    行為

    lpush 鍵 元素 元素

    left push 在列表的左邊向指定的鍵中添加列表元素,如果該鍵并不存在,Redis將為該鍵創(chuàng)建一個(gè)新的鏈表,如果這個(gè)鍵已經(jīng)存在,則是向list添加元素。

    rpush 鍵 元素 元素

    right push在列表的右邊向指定的鍵中添加列表元素

    lpop 鍵

    left pop 從指定鍵中的左邊彈出一個(gè)元素,列表中的元素就刪除了。

    rpop 鍵

    right pop從指定鍵的右邊彈出一個(gè)元素,列表中的元素就刪除了。

    lrange 鍵 開(kāi)始 結(jié)束

    從指定鍵的列表中取出指定范圍的元素列表,從左邊數(shù)起從0開(kāi)始,從右邊數(shù)起從-1開(kāi)始。如果要取整個(gè)列表,開(kāi)始是0,結(jié)束是-1

    llen

    得到指定列表的長(zhǎng)度

    4.3命令演示

    執(zhí)行效果

    Redis的五種數(shù)據(jù)類型總結(jié)

    需求:

    向mylist鍵的列表中,從左邊添加a b c三個(gè)元素

    從右邊添加one two three三個(gè)元素

    查詢所有的元素

    Redis的五種數(shù)據(jù)類型總結(jié)

    從右邊添加一個(gè)重復(fù)的元素three

    Redis的五種數(shù)據(jù)類型總結(jié)

    刪除最右邊的元素three

    Redis的五種數(shù)據(jù)類型總結(jié)

    刪除最左邊的元素c

    獲取列表中元素的個(gè)數(shù)

    Redis的五種數(shù)據(jù)類型總結(jié)

    5.集合類型set

    5.1概述

    在Redis中,我們可以將Set類型看作為沒(méi)有排序的字符集合,和List類型一樣,我們也可以在該類型的數(shù)據(jù)值上執(zhí)行添加、刪除或判斷某一元素是否存在等操作。

    Set可包含的最大元素?cái)?shù)量是40億,和List類型不同的是,Set集合中不允許出現(xiàn)重復(fù)的元素。

    Redis的五種數(shù)據(jù)類型總結(jié)

    5.2常用命令

    命令

    行為

    sadd 鍵 元素 元素

    向set集合中添加1個(gè)或多個(gè)元素

    smembers

    查詢指定的集合中所有的元素

    sismember 元素

    判斷指定的元素是否在某個(gè)集合中,如果存在返回1,否則返回0

    srem 元素 元素

    remove 刪除指定的一個(gè)或多個(gè)元素

    sunion 鍵1 鍵2

    返回給定集合的并集。不存在的集合 key 被視為空集。

    5.3命令演示

    需求:

    向myset集合中添加A B C 1 2 3 六個(gè)元素

    再向myset中添加B元素,看能否添加成功

    顯示所有的成員,發(fā)現(xiàn)與添加的元素順序不同,元素是無(wú)序的

    刪除其中的C這個(gè)元素,再查看結(jié)果

    判斷A是否在myset集合中

    判斷D是否在myset集合中

    創(chuàng)建鍵為set1的集合:元素是 a b c

    創(chuàng)建鍵為set2的集合:元素是 a b d

    得到set1和set2的并集,并且顯示

    Redis的五種數(shù)據(jù)類型總結(jié)

    6.有序集合zset

    6.1概述

    Redis 有序集合和集合一樣也是無(wú)序不可以重復(fù)。

    不同的是每個(gè)元素都會(huì)關(guān)聯(lián)一個(gè)分?jǐn)?shù)。redis正是通過(guò)分?jǐn)?shù)來(lái)為集合中的成員進(jìn)行從小到大的排序。有序集合的成員是唯一的,但分?jǐn)?shù)(score)卻可以重復(fù),每個(gè)集合可存儲(chǔ)40多億個(gè)成員。

    Redis的五種數(shù)據(jù)類型總結(jié)

    6.2常用命令

    命令

    行為

    zadd 鍵 分?jǐn)?shù) 值 分?jǐn)?shù) 值

    向有序集合添加一個(gè)或多個(gè)成員

    zrange 鍵 開(kāi)始索引 結(jié)束索引

    通過(guò)索引區(qū)間返回有序集合中指定區(qū)間內(nèi)的成員

    zrem 鍵 值 值

    移除有序集合中的一個(gè)或多個(gè)成員

    zrank 鍵

    返回有序集合中指定成員的索引

    zcard 鍵

    獲取有序集合的成員數(shù)

    zscore 鍵

    得到指定成員的分?jǐn)?shù)

    6.3命令演示

    添加鍵country,分?jǐn)?shù)是10,值是Japan

    添加鍵country,分?jǐn)?shù)是5,值是USA

    添加鍵country,分?jǐn)?shù)是1,值是China,分?jǐn)?shù)是120,值是Korea

    查詢country中所有的元素

    查詢Japan的索引號(hào)(從0開(kāi)始)

    刪除值為USA的元素

    查詢country中還有多少個(gè)元素

    6.4效果

    Redis的五種數(shù)據(jù)類型總結(jié)

    推薦學(xué)習(xí):Redis視頻教程

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)