redis是key-value的數據結構,每條數據都是一個鍵值對
鍵的類型是字符串 注意:鍵不能重複,值的類型分爲五種:字符串string 哈希hash 列表list 集合set 有序集合zsetredis
一.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 app
4.鍵命令
4.1 查找鍵,支持re
keys pattern
4.2 查看全部鍵
keys *
4.3 查看鍵中是否包含a
keys '*a*'
4.4 判斷鍵是否存在
exists key 存在返回1,不存在返回0
4.5 查看鍵對應的類型
type keyspa
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 ...rem
三. 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