1. 程式人生 > >redis數據操作筆記

redis數據操作筆記

操作筆記 edi als range tar 實現 查找 1.3 時間

redis是key-value的數據結構,每條數據都是一個鍵值對
鍵的類型是字符串 註意:鍵不能重復,值的類型分為五種:字符串string 哈希hash 列表list 集合set 有序集合zset

一.string
string是redis最基本的類型,最大能存儲512MB數據,string類型是二進制安全的,可以存儲任何數據,比如數字、圖片等。[redis中SDS的實現保證了redis保存的數據是二進制安全的.]
1.增加,修改
  1.1 如果設置的鍵不存在則為添加,如果設置的鍵已經存在則修改
    set key value
  1.2 設置鍵值及過期時間,以秒為單位
    setex key seconds value
  1.3 設置多個鍵值
    mset key1 value1 key2 value2 ...
  1.4 追加值
    append key value 返回value的大小

2.獲取
  2.1 根據鍵獲取值,如果不存在此鍵則返回nil
    get key
  2.2 根據多個鍵獲取多個值
    mget key1 key2

3. 刪除
  3.1 直接刪除
    del key
    del key1 key2 ...
  3.2 設置過期時間
    expire key seconds

4.鍵命令
  4.1 查找鍵,支持re
    keys pattern
  4.2 查看所有鍵
    keys *
  4.3 查看鍵中是否包含a
    keys ‘*a*‘
  4.4 判斷鍵是否存在
    exists key 存在返回1,不存在返回0
  4.5 查看鍵對應的類型
    type key

5.其他操作
  5.1 查看鍵有效時間
    ttl key

二. hash
hash用於存儲對象,對象的結構為屬性、值的類型為string

1.增加,修改
  1.1 設置單個屬性
    hset key field value
  1.2 設置多個屬性
    hset key field value field value ...

2. 獲取
  2.1 獲取指定鍵所有的屬性
    hkeys key
  2.2 獲取一個屬性的值
    hget key field
  2.3 獲取多個屬性的值
    hmget key field field
  2.4 獲取所有屬性的值
    hvals key

3.刪除
  3.1 刪除整個hash鍵及值,使用del命令
    hdel key field1 field2 ...

三. list 列表的元素類型為string ,按照插入順序排序
1.增加
  1.1 在左側插入數據
    lpush key value1 value2 ...
  1.2 在右側插入數據
    rpush key value1 value2 ...
  1.3 在指定元素的前或後插入新元素
    linsert key before或after 現有元素 新元素

2.獲取
  2.1 返回列表裏指定範圍內的元素,start、stop為元素的下標索引
    索引從左側開始,第一個元素為0,索引可以是負數,表示從尾部開始計數,如-1表示最後一個元素
      lrange key start stop

3.修改

  3.1 設置指定索引位置的元素值,索引從左側開始,第一個元素為0,索引可以是負數,表示尾部開始計數,如-1表示最後一個元素
    lset key index value

4.刪除
  4.1 刪除指定元素,將列表中前count次出現的值為value的元素移除
    count > 0: 從頭往尾移除
    count < 0: 從尾往頭移除
    count = 0: 移除所有
    lrem key count value

四. set 無序集合,元素為string類型,元素具有唯一性,不重復,說明:對於集合沒有修改操作

1. 增加
  1.1 添加元素
    sadd key member1 member2 ...
2. 獲取
  2.1 返回所有的元素
    smembers key
3.刪除
  3.1 刪除指定元素
    srem key member

五. zset sorted set,有序集合,元素為string類型,元素具有唯一性,不重復,每個元素都會關聯一個double類型的score,表示權重,
通過權重將元素從小到大排序.說明:沒有修改操作
1.增加
  1.1 添加
    zadd key score1 member1 score2 member2 ...

2. 獲取 返回指定範圍內的元素
  2.1 start、stop為元素的下標索引,索引從左側開始,第一個元素為0索引可以是負數,表示從尾部開始計數,如-1表示最後一個元素
    zrange key start stop
  2.2 返回score值在min和max之間的成員
    zrangebyscore key min max

3.刪除 刪除指定元素
  3.1 刪除指定元素
    zrem key member1 member2 ...
  3.2 刪除權重在指定範圍的元素
    zremrangebyscore key min max

redis數據操作筆記