2.3.1 hash型別
2.4.1 list型別
2.5.1 set型別
2.6.1 zset型別
redis中以鍵值對儲存資料,乙個鍵對應乙個值,鍵名不能重複,鍵的型別為字串,值的型別有5種:string(字串)、hash(雜湊)、list(列表)、set(集合)、zset(有序集合)
注意:如果某個鍵值對儲存了某個資料型別的值,不能修改為其他的資料型別。
1)查詢鍵(支援正規表示式):keys 表示式
如:keys *a* 查詢名字中包含a的鍵
2) 判斷鍵是否存在,存在返回1,否則返回0:exists 'key'
3) 檢視鍵對應的value的型別,若鍵不存在則返回none:type 'key'
4) 刪除鍵,值同時會被刪除:del 'key1' 'key2' ...
5) 設定鍵過期時間,以秒為單位:expire 'key' t
6)檢視鍵有效時間,以秒為單位(鍵過期返回-2,未設定鍵的有效時間返回-1,其他根據實際有效時間返回):ttl 'key'
2.2.1.1 簡介1)string 是redis最基本的型別
2)最大儲存512mb資料
3)string型別是二進位制安全的,可以儲存任何資料,比如數字、等
2.2.1.2 常用操作命令1)增加 / 修改
*如果設定的鍵不存在則為新增,否則為修改*
- 設定鍵值:set 'key' 'value'
- 設定鍵值及過期時間,以秒為單位:setex 'key' t 'value'
- 設定多個鍵值:mset 'key1' 'value1' 'key2' 'value2' ...
2)獲取
- 根據鍵獲取值,如果鍵不存在則返回nil:get 'key'
- 根據多個鍵獲取多個值:mget 'key1' 'key2' ...
2.3.1.1 簡介1)hash是乙個string 型別的field和value的對映表。採用key—field—value的方式。乙個key可對應多個field,乙個field對應乙個value。
2)value內部是乙個hashmap,如果該map的成員比較少,則會採用一維陣列的方式來緊湊儲存該map。
2.3.1.2 常用操作命令1)增加 / 修改
- 設定單個屬性:hset 'key' 'field' 'value'
- 設定多個屬性:mhset 'key' 'field1' 'value1' 'field2' 'value2' ...
2)獲取
- 獲取指定鍵的所有屬性:hkeys 'key'
- 獲取指定鍵的單個指定屬性的值:hget 'key' 'field'
- 獲取指定鍵的多個指定屬性的值:hmget 'key' 'field1' 'field2'
- 獲取指定鍵的所有屬性:hvals 'key'
- 獲取指定鍵的所有屬性及其對應的值:hgetall 'key'
3)刪除
- 刪除指定鍵的單個或多個指定屬性,屬性對應的值會被一起刪除:hdel 'key' 'field1' 'field2' ...
2.4.1.1 簡介1)list為雙向鍊錶結構,儲存的元素型別為string
2)有序,可以通過索引下標獲取元素或某個範圍內元素列表, 列表元素可以重複
3)乙個列表最多可以儲存2^32 -1個元素
2.4.1.2 常用操作命令1)增加 / 修改
- 在左側插入資料:lpush 'key' 'value1' 'value2' ....
- 在右側插入元素:rpush 'key' 'value1' 'value2' ....
- 在指定元素的前或後插入新元素:linsert 'key' before/after 'value1' 'value'
- 設定指定索引位置的元素值:lset 'key' index 'value'
2)獲取
- 獲取鍊錶中指定範圍內的元素:lrange 'key' start stop
1. start stop分別為起始 / 結束元素的下標
2. 索引從左側開始,起始為0
3. 索引可以是負數,表示從尾部開始,最後乙個元素為-1
- 獲取鍊錶中指定下標的元素:lindex 'key' index
3)刪除
- 將列表中前count次出現的值為value的元素移除:lrem 'key' count 'value'
1. count > 0 從頭開始
2. count < 0 從尾開始
3. count = 0 移除所有
2.5.1.1 簡介1)無序集合
2)元素型別為string,元素唯一,不可重複
3)集合元素不可修改
2.5.1.2 常用操作命令1)增加
- 給指定key增加乙個或多個元素:sadd 'key' 'member1' 'member2' ...
2)獲取
- 獲取指定key的所有元素:smembers 'key'
3)刪除
- 刪除指定key的指定元素:srem 'key' 'member'
2.6.1.1 簡介1)有序集合
2)元素型別為string,元素唯一,不可重複
3)每個元素都會關聯乙個分數,分數可以為負數,通過分數將元素從大到小排序
4)集合元素不可修改
2.6.1.2 常用操作命令1)增加
- 給指定key增加乙個或多個元素,並設定分數:zadd 'key' score1 'member1' score2 'member2' ....
noted:如果增加的值存在,則以上命令相當於修改值的分數;如果多個值分數相同,則值按照字典順序排序
2)獲取
- 獲取指定範圍內的元素 :zrange 'key' start stop
1. start stop分別為起始 / 結束元素的下標
2. 索引從左側開始,起始為0
3. 索引可以是負數,表示從尾部開始,最後乙個元素為-1
- 獲取分數在指定範圍的元素:zrangebyscore 'key' min max
- 獲取指定元素的分數:zscore 'key' 'member'
3)刪除
- 刪除指定元素:zrem 'key' 'member1' 'member2' ....
- 刪除分數在指定範圍的元素:zremrangebyscore 'key' min max
Redis的5種資料型別
redis支援5種資料型別,它們描述如下 redis的字串是位元組序列。在redis中字串是二進位制安全的,這意味著他們有乙個已知的長度,是沒有任何特殊字元終止決定的,所以可以儲存任何東西,最大長度可達512兆。例子redis 127.0 0.1 6379 set name yiibai okred...
Redis的5種資料型別
redis支援五種資料型別 string 字串 hash 雜湊 list 列表 set 集合 及zset sorted set 有序集合 string是redis最基本的型別,你可以理解成與memcached一模一樣的型別,乙個key對應乙個value。string型別是二進位制安全的。意思是red...
redis的5種資料型別
redis資料結構 redis是一種高階的key value的儲存系統,其中value支援五種資料型別。1.字串 string 2.雜湊 hash 3.字串列表 list 4.字串集合 set 5.有序字串集合 sorted set key的定義呢,需要大家注意的幾點 key永遠都是字串。key不要...