redis命令中文手冊
一:base
DEL | 刪除某個key,或是一系列key;DEL key1 key2 key3 key4 |
TYPE | 返回某個key元素的數據類型 ( none:不存在,string:字符,list,set,zset,hash) |
KEYS | 返回匹配的key列表 (KEYS foo*:查找foo開頭的keys) |
RANDOMKEY | 隨機獲得已經存在的key |
RENAME | 更改key的名字,如果名字存在則更改失敗 |
DBSIZE | 返回當前數據庫的key的總數 |
EXPIRE | 設置某個key的過期時間(秒),(EXPIRE bruce 1000:設置bruce這個key1000秒後系統自動刪除) |
TTL | 查找某個key還有多長時間過期,返回時間秒 |
SELECT | 選擇數據庫 |
MOVE | 把key從一個數據庫轉移到另外一個庫 |
FLUSHDB | 清空當前數據庫數據 |
FLUSHALL | 清空所有數據庫數據 |
SET | 存一個數據到數據庫 SET keyname datalength data (SET bruce 10 paitoubing:保存key爲burce,字符串長度爲10的一個字符串paitoubing到數據庫) |
GET | 獲取某個key 的value值 |
GETSET | GETSET可以理解成獲得的key的值然後SET這個值,更加方便的操作 (SET bruce 10 paitoubing,這個時候需要修改bruce變成1234567890並獲取這個以前的數據paitoubing,GETSET bruce 10 1234567890) |
MGET | 一次性獲得多個key的數據 (MGET uid:1:name uid:1:email uid:1:ciy) |
SETNX | SETNX與SET的區別是SET可以創建與更新key的value,而SETNX是如果key不存在,則創建key與value數據 |
SETEX | SETEX = SET + EXPIRE,貌似我的這個版本沒有辦法測試 |
MSET | 一次性設置多個參數的值(MSET uid:1:name shjuto uid:1:email [email protected] uid:1:city 8 回車 nanchang)最後一個值需要回車輸入,和SET一樣,不知爲啥。 |
MSETNX | 如果設置的key不存在的話,或是叫做新key的話;一次性設置多個參數的值 (MSET uid:1:name shjuto uid:1:email [email protected] uid:1:city 8回車 nanchang)最後一個值需要回車輸入,和SET一樣,不知爲啥。 |
INCR | 自增,有點類是mysql incr.(INCR global:uid) |
INCRBY | 自增 +length ,(INCRBY uid 5)原來的基礎+5=result |
DECR | 自減 |
DECRBY | DECRBY 自減 -lenght |
二:LISTS (無索引序列,head位置是0,……)
RPUSH | 追加數據到系列的尾部 (RPUSH listtest 10 \n 1111111122) |
LPUSH | 追加數據到序列的頭部 (LPUSH listtest 10 \n 2222222222) |
LLEN | 一個序列的長度;(LLEN listtest) |
LRANGE | 從自定的範圍內返回序列的元素 (LRANGE testlist 0 2;返回序列testlist前0 1 2元素) |
LTRIM | 修剪某個範圍之外的數據 (LTRIM testlist 0 2;保留0 1 2元素,其餘的刪除) |
LINDEX | 返回某個位置的序列值(LINDEX testlist 0;返回序列testlist位置爲零的元素) |
LSET | 更新某個位置元素的值 (LSET testlist 0 5 \n 55555;) |
LPOP | LPOP key Return and remove (atomically) the first element of the List at key |
RPOP | RPOP key Return and remove (atomically) the last element of the List at key |
LREM |
根據值刪除序列元素 (LREM testlist 0 5 \n 33333;刪除序列中所有的等於33333的元素,爲何不是REMOVE BY KEY?不知道何故,可能對刪除重複數據有用吧) |
三:SETS (有索引無序序列)
SADD | 增加元素到SETS序列,如果元素不存在則添加成功 1,否則失敗 0;(SADD testlist 3 \n one) |
SREM | 刪除SETS序列的某個元素,如果元素不存則失敗0,否則成功 1(SREM testlist 3 \N one) |
SPOP | 隨機刪除某個元素 (SPOP testlist) |
SMOVE |
把一個SETS序列的某個元素 移動到 另外一個SETS序列 (SMOVE testlist test 3\n two;從序列testlist移動元素two到 test中,—testlist中將不存在two元素) |
SCARD | 統計某個SETS的序列的元素數量 (SCARD testlist) |
SISMEMBER | 產看某個數據是否在序列中,(SISMEMBER testlist 3 \n two) |
SINTER | 幾個SETS序列的交集 SINTER key1 key2 … keyN (SINTER test testlist),牛B呀 |
SINTERSTORE |
把計算出來的交集 記錄到一個新的序列 SINTERSTORE dstkey key1 key2 … keyN (SINTERSTORE resultlist testlist test;把testlisttest的交集記錄到resultlist) |
SUNION | 幾個SETS序列的並集 SUNION key1 key2 … keyN (SUNION test testlist) |
SUNIONSTORE |
把計算出來的並集 記錄到一個新的序列 SUNIONSTORE dstkey key1 key2 … keyN (SUNIONSTORE resultlist testlist test;把testlisttest的交集記錄到resultlist) |
SDIFF |
SDIFF key1 key2 … keyN,求出某幾個序列的並集 與 某個序列 求出差集 ,請看官方例子: key1 = x,a,b,c key2 = c key3 = a,d SDIFF key1,key2,key3 => x,b |
SDIFFSTORE | SDIFFSTORE dstkey key1 key2 … keyN ,和前面的SINTERSTORE SUNIONSTORE差不多,對比 |
SMEMBERS | SMEMBERS KEY 返回某個序列的所有元素 |
SRANDMEMBER | SRANDMEMBER KEY 隨機返回某個序列的元素 |