一.string型別
string型別是redis中最簡單的型別,乙個key對應乙個value,redis的string可以包含任何資料物件,比如jpg或者序列化的物件。
關於string型別的操作如下:
(1)set和get
set用來設定乙個鍵值對,例如:set name acdreamer ,意思就是說設定乙個name為"acdreamer"的鍵值對,而要獲取乙個鍵值對,用get name即可。
(2)setnx
設定key對應的值為string型別的value,如果key已經存在,返回0,nx是not exist的意思。
比如,set name acdreamer,然後我們用setnx name jack,這裡name不會被覆蓋掉。
(3)setex
設定key對應值為string型別的value,並指定此鍵值對應的有效期。例如,指定乙個haircolor=red的有效期為10s,那麼set haircolor 10 red,10s後就失效。
(4)setrange
設定指定key的value值的子字串。比如:將我的qq郵箱替換為gmail郵箱。
set mail [email protected]
setrange mail 10 gmail
表示從第10個下標開始進行替換,替換後的結果為acdreamer@gmailm,顯然這種替換不合理.
(5)mset
一次設定多個key的值,成功返回ok表示所有的值都設定了,返回0表示沒有任何值被設定。
mset name acdreamer age 21 *** male
(6)msetnx
一次設定多個key的值,成功返回ok表示所有的值都被設定了,返回0表示沒有任何值被設定,但不會已存在的key。只要有乙個設定不成功,那麼所有的鍵都會設定不成功。
(7)getset
設定key的新值,並返回乙個key的舊值。
(8)getrange
獲取乙個key的value值得字串,比如getrange name 0 5
(9)mget
一次獲取多個key的值,如果不存在返回對應的nil。例如:mget name age ***
(10)incr
對key的值做加加操作,並返回新的值。例如:incr age
(11)incrby
同incr類似,加指定值,key不存在時會設定key,並認為原來的值為0。
例如,incrby age 5
(12)decr和decrby
與incr和incrby差不多,對指定的key進行減操作。
(14)strlen
取指定key的value值得長度。
二.hash型別
redis的hash型別是乙個string型別的field和value的對映表,它的新增和刪除操作都是o(1),hash特別適合儲存物件,相對於物件的每個欄位存成單個的string型別,將乙個物件儲存為hash型別將使用更少的記憶體,並且可以方便訪問整個物件。可以看出hash就相當於mysql中的一張表。
hash表的操作:
(1)hset
設定表中的字段的值,例如:hset table name acdreamer
(2)hsetnx
如果同一張hash表中的同乙個欄位的值已經被設定,則返回0,代表設定不成功,跟string型別中的setnx用法差不多。
(3)hmset
批量設定,跟string中的mset用法差不多,可以同時設定多個字段。例如
hmset table name acdreamer age 21 *** male
(4)hget和hmget
hget返回hash表中的單個欄位的值,例如:hget table name
hmget返回hash表中多個欄位的值,例如:hmget table name age ***
(5)hincrby
hash表中指定欄位的值加一定值,例如:hincrby table age 4
(6)hexists
判斷一張hash表中的某個字段是否存在,如果存在返回1,否則返回0。
例如:hexists table name
(7)hlen
返回指定hash表的所有存在欄位的數量。
(8)hdel
刪除hash表中指定的字段。
(9)hkeys
返回hash表中所有的字段。例如:hkeys table
(10)hvals
返回hash表中所有欄位的值。例如:hvals table
(11)hgetall
獲取某個hash表中的全部field和value值。
ubuntu 14.04下redis安裝及簡單測試
redis集群明細文件
ubuntu 12.10下安裝redis(**詳解)+ jedis連線redis
redis系列-安裝部署維護篇
centos 6.3安裝redis
redis安裝部署學習筆記
redis配置檔案redis.conf 詳解
redis 的詳細介紹:請點這裡
Redis(三) string型別資料庫操作
目錄 string型別 儲存 設定鍵值 設定鍵值及過期時間,以秒為單位 設定多個鍵值 追加值 獲取 獲取 根據鍵獲取值,如果不存在此鍵則返回nil 根據多個鍵獲取多個值 查詢 查詢鍵,引數 持正規表示式 檢視所有鍵 檢視名稱中包含a的鍵 判斷鍵是否存在,如果存在返回1,不存在返回0 檢視鍵對應的va...
Redis資料庫和MySQL資料庫的區別
redis是乙個記憶體資料庫,每次刪除或者其他操作,都需要進行flush操作 mysql資料庫在linux系統中,也是需要進行flush操作的。在hive中,需要將mysql的jar包匯入,然後要用高版本的jar包去替換低版本的jline包的。hive客戶端 主要配置以下檔案 1 將hive檔案包上...
Redis資料庫(初級)
redis是乙個開源的非關係型資料庫,它採用c語言編寫,是乙個key value儲存系統,它儲存的value型別很多,包括string 字串 list 鍊錶 set 集合 zset 有序集合 hash 雜湊 比如,我們插入一條資料,如下 python view plain copy import r...