redis的數據操作

redis的數據類型及操作

redis當中一共支持五種數據類型,分別是string字符串類型,list列表類型,集合set類型,hash表類型以及有序集合zset類型

字符串操作

  • SET key value(指定key的值)

  • GET key value(獲取key的值)

    在這裏插入圖片描述

  • GETRANGE key m,n(獲取key的值的[m,n]的子字符)

    在這裏插入圖片描述

  • GETSET key value(重新設置key的值,並返回舊值)

    在這裏插入圖片描述

  • MGET key1[key2...](獲取一個或多個key的值)

    在這裏插入圖片描述

  • SETEX key seconds value(將key值設爲value,且過期時間爲seconds(單位是秒),即過期時間結束後該key自動消失)

    在這裏插入圖片描述

  • SETNX key value(key不存在時設置爲value,並返回1,key存在不改變value值,返回0)

    在這裏插入圖片描述

  • SETRANGE key offset value(從offset偏移量處覆蓋原始key值,返回修改後的字符數)

    在這裏插入圖片描述

  • STRLEN key(返回key值的長度)

  • MSET key1 value1[key2 value2 ...](同時設置多個key的值,這些key值都不存在)

  • PESTEX key millisenconds value(設置key生存時間,單位是毫秒)

  • INCR key(將key存儲的數字值加一)、INCRBY key increment(將key增加指定值)、INCRBYFLOAT key increment(將key增加指定浮點數)

    在這裏插入圖片描述

  • DECR key(將key存儲的數字值減一)、DECRBY key increment(將key減少指定值)

    在這裏插入圖片描述

  • APPEND key value(在key的值後追加value)

  • del key(刪除key)

hash列表操作

Redis hash 是一個string類型的field和value的映射表,hash特別適合用於存儲對象。

Redis 中每個 hash 可以存儲 232 - 1 鍵值對(40多億)

  • HSET key field value(將哈希表中的key中的字段field的值設爲value)、HSETNX key field value(將哈希表中的key中的字段field的值設爲value,前提是field之前不存在)

    在這裏插入圖片描述

  • HEXISTS key field(查看key中字段是否存在)

    在這裏插入圖片描述

  • HMSET key1 field1 value1 [field 2 value2...](同時給key添加多個字段值)

  • HGETALL key(獲取key的所有字段和值)、HGET key field(獲取key指定字段的值)、HKEYS key(獲取哈希表中所有字段)、HLEN key(獲取哈希表中字段的數量)、HMGET key field [field2...](獲取所有給定字段的值)

    在這裏插入圖片描述

  • HINCRBY key field increment(爲哈希表 key 中的指定字段的整數值加上增量 increment)、HINCRBYFLOAT key field increment(爲哈希表 key 中的指定字段的整數值加上浮點數增量 increment)

  • HVALS key(獲取哈希表中的所有值)

  • HDEL key field1[field2...](刪除一個或多個字段)

列表操作

Redis列表是簡單的字符串列表,按照插入順序排序。你可以添加一個元素到列表的頭部(左邊)或者尾部(右邊)

一個列表最多可以包含 232 - 1 個元素 (4294967295, 每個列表超過40億個元素)。

  • LPUSH key value1[value2...](將一個值或多個值插到列表頭部,類似入棧操作)、LPUSHX key value(將一個值插到已存在列表的頭部)

  • LRANGE key start stop(查看List中的所有數據)

    在這裏插入圖片描述

  • RPUSH key value1 [value2...](在列表後插入一個或多個值)、RPSUHX key value(爲已存在的列表添加值)

    在這裏插入圖片描述

  • LINSERT key BEFORE|AFTER pivot value(在列表元素前或後插入)

    在這裏插入圖片描述

  • LINDEX key value(通過索引獲取值,索引值從0開始和返回的序號不同)、LSET key index value(通過索引設置值)

    在這裏插入圖片描述

  • LLEN key(獲取列表長度)

  • LPOP key(獲取列表第一個並移除,類似出棧操作,從左邊彈出)、RPOP key(獲取列表最後一個並移除,從右邊彈出)

    在這裏插入圖片描述

  • LTRIM key start stop(保留列表中start到stop的值)

集合操作

redis 的 Set 是 String 類型的無序集合。集合成員是唯一的,這就意味着集合中不能出現重複的數據。

Redis 中集合是通過哈希表實現的,所以添加,刪除,查找的複雜度都是 O(1)。

集合中最大的成員數爲 232 - 1 (4294967295, 每個集合可存儲40多億個成員)。

  • SADD key member1[member2...](向集合添加一個或多個成員)、SMEMBERS key(返回集合中所有成員)

    在這裏插入圖片描述

  • SCARD key(獲取集合的成員數)、SDIFF key1 [key2](返回給定集合的差集)、SDIFFSTORE destination key1 [key2](返回給定集合的差集由destination存儲)

    在這裏插入圖片描述

  • SINTER key1 [key2](返回給定集合的交集)、SINTERSTORE destination key1 [key2](返回給定集合的交集由destination存儲)

    在這裏插入圖片描述

  • SUNION key1 [key2](返回給定集合的並集)、SUNIONSTORE destination key1 [key2](返回給定集合的並集由destination存儲)

    在這裏插入圖片描述

  • SISMEMBER key member(判斷member是否爲key中成員)、SMOVE key1 key2 member(將key1中的member移到key2中)

    在這裏插入圖片描述

  • SPOP key(隨機移除並返回集合中一個元素)、SRANDMEMBER key count(隨機從key中返回count個元素)

    在這裏插入圖片描述

  • SREM key member1[member2](移除集合中一個或多個成員)

key操作

  • DEL key(刪除key)

  • DUMP key(序列化key,並返回序列化的值)

    在這裏插入圖片描述

  • EXISTS key(檢查key是否存在)

  • EXPIRE key seconds(設置過期時間,單位是秒),PEXPIRE key seconds(設置過期時間,單位是毫秒)

  • PERSIST key(移除過期時間)

  • PTTL key(返回過期時間,單位是毫秒),TTL key(返回過期時間,單位是秒)

  • RANDOMKEY(隨機返回一個key)

  • RENAME key newkey(修改key值),RENAMENX key newkey(當newkey不存在時將key改爲newkey)

  • TYPE key(返回key存儲值的類型)

發佈了87 篇原創文章 · 獲贊 32 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章