Redis系列(二)——Redis數據類型

博文配圖

歡迎訪問:zrxJuly’s Bolg

Redis支持5種數據類型:

  • string:字符串
  • hash:哈希
  • list:列表
  • set: 集合
  • zset:有序集合(sorted set)

String:字符串

string是Redis最基本的類型,一個key對應一個value;
string類型是二進制安全的,即Redis的string可包含任何數據。比如jpg圖片或者序列化的對象。
string類型是Redis最基本的數據類型,string類型的值最大能存儲512MB。

語法格式:
set key value
get key

127.0.0.1:6379> set name 'zrx'
OK
127.0.0.1:6379> get name
"zrx"

Redis 命令不區分大小寫。上面例子 鍵爲name,值爲zrx。使用了set先給name賦值爲’zrx’,再使用了get取鍵對應的值。

Hash:哈希

Hash是鍵值對集合,適用於存儲對象。Redis哈希(散列)是字符串字段和字符串值之間的映射。

語法格式:
hmset key field value
hget key field

127.0.0.1:6379> hmset myhash field1 "hello" field2 "world"
OK
127.0.0.1:6379> hget myhash field1
"hello"
127.0.0.1:6379> hget myhash field2
"world"
127.0.0.1:6379> hmset myhash name "zrx" age "twenty"
OK
127.0.0.1:6379> hget myhash name
"zrx"
127.0.0.1:6379> hget myhash age
"twenty"

hmset 設置field=>value對,hget獲取對應field對應的value。
上面例子中field=>value對有:
field1=>"hello",field2=>"world",name=>"zrx",age=>"twenty"

每個hash可以存儲232-1個鍵值對。

List:列表

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

語法格式:
lpush key member

127.0.0.1:6379> lpush list1 good
(integer) 1
127.0.0.1:6379> lpush list1 study
(integer) 2
127.0.0.1:6379> lpush list1 up
(integer) 3
127.0.0.1:6379> lrange list1 0 2
1) "up"
2) "study"
3) "good"

列表最大長度爲232-1個元素。

Set:集合

Redis的set是string類型的***無序*** 集合。集合是通過哈希表實現的,因此添加、刪除、查找的複雜度都是O(1)。
sadd命令
添加一個string元素到key對應的set集合中,成功返回1,元素已在集合中返回0,key對應的set不存在返回錯誤。

語法格式:sadd key member

127.0.0.1:6379> sadd subject java
(integer) 1
127.0.0.1:6379> sadd subject html
(integer) 1
127.0.0.1:6379> sadd subject java
(integer) 0
127.0.0.1:6379> smembers subject
1) "java"
2) "html"

java被添加了兩次,但根據集合內元素唯一性,第二次添加的元素將忽略。

集合中最大的成員數爲232-1

zset:有序集合(sorted set)

添加元素到集合,若元素在集合中存在則更新對應score。

語法格式
zadd key score member

127.0.0.1:6379> zadd zname 0 zs
(integer) 1
127.0.0.1:6379> zadd zname 0 ls
(integer) 1
127.0.0.1:6379> zadd zname 0 ww
(integer) 1
127.0.0.1:6379> ZRANGEBYSCORE zname 0 10
1) "ls"
2) "ww"
3) "zs"

參考資料

http://www.runoob.com/redis/redis-install.html
https://www.yiibai.com/redis/redis_quick_guide.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章