天天看點

Redis指令

字元串指令

指令

行為

GET

擷取存儲在給定鍵中的值

SET

設定存儲在給定鍵中的值

DEL

删除存儲在給定鍵中的值(此指令可以用于所有類型)

INCR

INCR   key-name --- 将鍵存儲的值加上1

DECR

DECR   key-name --- 将鍵存儲的值減去1

INCRBY

INCRBY   key-name amount --- 将鍵存儲的值加上整數amount

DECRBY

DECRBY   key-name amount --- 将鍵存儲的值減去整數amount

INCRBYFLOAT

INCRBYFLOAT   key-name amount --- 将鍵存儲的值加上浮點數amount

APPEND

APPEND   key-name value --- 将值value追加到給定鍵key-name目前存儲的值的末尾

GETRANGE

GETRANGE   key-name start end --- 擷取一個由偏移量start至偏移量end範圍内所有字元組成的子串,包括start和end在内

SETRANGE

SETRANGE   key-name offset value --- 将從offset偏移量開始的子串設定為給定值

GETBIT

GETBIT   key-name offset --- 将字元串看作是二進制位串(bit string),并傳回位串中偏移量為offset的二進制位的值

SETBIT

SETBIT   key-name offset value --- 将字元串看作是二進制位串,并将位串中偏移量為offset的二進制位的值設定為value

BITCOUNT

BITCOUNT   key-name [start end] ---   統計二進制位串裡面值為1的二進制位的數量,如果給定了可選的start偏移量和end偏移量,那麼隻對偏移量指定範圍内的二進制位進行統計

BITTOP

BITTOP operation dest-key key-name [key-name ...] ---   對一個或多個二進制位串執行包括并(AND)、或(OR)、異或(XOR)、非(NOT)在内的任意一種按位運算操作(bitwise   operation),并将計算得出的結果儲存在dest-key鍵裡面

清單指令

RPUSH

RPUSH   key-name value [value ...] --- 将一個或多個值推入清單的右端

LPUSH

LPUSH   key-name value [value ...] --- 将一個或多個值推入清單的左端

RPOP

RPOP   key-name --- 移除并傳回清單最右端的元素

LPOP

LPOP   key-name --- 移除并傳回清單最左端的元素

LRANGE

LRANGE   key-name start end ---   傳回清單從start偏移量到end偏移量範圍内的所有元素,其中偏移量為start和偏移量為end的元素也會包含在被傳回的元素之内

LINDEX

LINDEX   key-name offset --- 傳回清單中偏移量為offset的元素

LTRIM

LTRIM   key-name start end ---   對清單進行修剪,隻保留從start偏移量到end偏移量範圍内的元素,其中偏移量為start和偏移量為end的元素也會被保留

BLPOP

BLPOP   key-name [key-name ...] timeout ---   從第一個非空清單中彈出位于最左端的元素,或者在timeout秒内阻塞并等待可彈出的元素出現

BRPOP

BRPOP   key-name [key-name ...] timeout ---   從第一個非空清單中彈出位于最右端的元素,或者在timeout秒内阻塞并等待可彈出的元素出現

RPOPLPUSH

RPOPLPUSH   source-key dest-key timeout ---   從source-key清單中彈出位于最右端的元素,然後将這個元素推入dest-key清單的最左端,并向使用者傳回這個元素

BRPOPLPUSH

BRPOPLPUSH source-key dest-key timeout ---   從source-key清單中彈出位于最右端的元素,然後将這個元素推入dest-key清單的最左端,并向使用者傳回這個元素;如果source-key為空,那麼timeout秒之内阻塞并等待可彈出的元素出現

集合指令

SADD

SADD   key-name item [item …] --- 将一個或多個元素添加到集合裡面,并傳回被添加元素當中原本不存在于集合裡面的元素數量

SREM

SREM   key-name item [item …] --- 從集合裡面移除一個或多個元素,并傳回被移除元素的數量

SISMEMBERS

SISMEMBERS   key-name item --- 檢查元素item是否存在于集合key-name裡

SCARD

SCARD   key-name --- 傳回集合包含的元素的數量

SMEMBERS

SMEMBERS   key-name --- 傳回集合包含的所有元素

SRANDMEMBER

SRANDMEMBER   key-name [count] ---   從集合裡面随機地傳回一個或多個元素。當count為正數時,指令傳回的随機數不會重複;當count為負數時,指令傳回的随機元素可能會出現重複

SPOP

SPOP   key-name  --- 随機地移除集合中的一個元素,并傳回被移除的元素

SMOVE

SMOVE   source-key dest-key item ---   如果集合source-key包含元素item,那麼從集合source-key裡面移除元素item,并将元素item添加到集合dest-key中;如果item被成功移除,那麼指令傳回1,否則傳回0

SDIFF

SDIFF   key-name [key-name … ] --- 傳回那些存在于第一個集合,但不存在于其他集合中的元素

SDIFFSTORE

SDIFFSTORE   dest-key key-name [key-name … ] --- 将那些存在于第一個集合,但不存在于其他集合中的元素存儲到dest-key鍵裡面

SINTER

SINTER   key-name [key-name … ] --- 傳回那些同時存在于所有集合的元素

SINTERSTORE

SINTERSTORE   dest-key key-name [key-name … ] --- 将那些同時存在于所有集合的元素存儲到dest-key鍵裡面

SUNION

SUNION   key-name [key-name … ] --- 傳回那些至少存在于一個集合中的元素

SUNIONSTORE

SUNIONSTORE dest-key key-name [key-name … ] ---   将那些至少存在于一個集合中的元素存儲到dest-key鍵裡面

散列指令

HMGET

HMGET   key-name key [key … ] --- 從散列裡面擷取一個或多個鍵的值

HMSET

HMSET   key-name key value [key value … ] --- 為散列裡面的一個或多個鍵設定值

HDEL

HDEL   key-name key [key … ] --- 删除散列裡面的一個或多個鍵值對,傳回成功找到并删除的鍵值對數量

HLEN

HLEN   key-name --- 傳回散列包含的鍵值對數量

HEXISTS

HEXISTS   key-name key --- 檢查給定鍵是否存在于散列中

HKEYS

HKEYS   key-name --- 擷取散列包含的所有鍵

HVALS

HVALS   key-name --- 擷取散列包含的所有值

HGETALL

HGETALL   key-name --- 擷取散列包含的所有鍵值對

HINCRBY

HINCRYBY   key-name key increment --- 将鍵key存儲的值加上整數increment

HINCRBYFLOAT

HINCRYBYFLOAT key-name key increment --- 将鍵key存儲的值加上浮點數increment

有序集合指令

ZADD

ZADD   key-name score member [score member … ] --- 将帶有給定分值的成員添加到有序集合裡面

ZREM

ZREM   key-name member [member … ] --- 從有序集合裡面移除給定的成員,并傳回被移除成員的數量

ZCARD

ZCARD   key-name --- 傳回有序集合包含的成員數量

ZINCRBY

ZINCRBY   key-name increment member --- 将member 成員的分值加上increment

ZCOUNT

ZCOUNT   key-name min max --- 傳回分值介于min和max之間的成員數量

ZRANK

ZCOUNT   key-name member --- 傳回成員member在有序集合中的排名

ZSCORE

ZSCORE   key-name member --- 傳回成員member的分值

ZRANGE

ZRANGE   key-name start stop [WITHSOCRES] ---   傳回有序集合中排名介于start和stop之間的成員,如果給定了可選項的WITHSCORES選項,那麼指令會将成員的分值也一并傳回

ZREVRANK

ZREVRANK   key-name member --- 傳回有序集合裡面成員member的排名,成員按照分值從大到小排列

ZREVRANGE

ZREVRANGE   key-name start stop [WITHSCORES] --- 傳回有序集合給定排名範圍内的成員,成員按照分值從大到小排列

ZRANGEBYSCORE

ZRANGEBYSCORE   key min max [WITHSCORES] [LIMIT offset count] --- 傳回有序集合中,分值介于min和max之間的所有成員

ZREVRANGEBYSCORE

ZREVRANGEBYSCORE   key min max [WITHSCORES] [LIMIT offset count] ---   擷取有序集合中分值介于min和max之間所有的成員,并按照分值從大到小的順序來傳回它們

ZREMRANGEBYRANK

ZREMRANGEBYRANK   key-name start stop --- 移除有序集合中排名介于start和stop之間的成員

ZREMRAMGEBYSCORE

ZREMRANGEBYSCORE   key-name min max --- 移除有序集合中分值介于min和max之間的所有成員

ZINTERSTORE

ZINTERSTORE   dest-key key-count key [key … ] [WEIGHTS weight [weight … ]] [AGGREGATE   SUM|MIN|MAX] --- 對給定的有序集合執行類似于集合的交集運算

ZUNIONSTORE

ZUNIONSTORE dest-key key-count key [key … ] [WEIGHTS weight [weight …   ]] [AGGREGATE SUM|MIN|MAX] --- 對給定的有序集合執行類似于集合的并集運算

釋出與訂閱指令

SUBSCRIBE

SUBSCRIBE   channel [channel … ] --- 訂閱給定的一個或多個頻道

UNSUBSCRIBE

UNSUBSCRIBE   [channel [channel … ]] --- 退訂給定的一個或多個頻道,如果執行時沒有給定任何頻道,那麼退訂所有的頻道

PUBLISH

PUBLISH   channel message --- 向給定頻道發送資訊

PSUBSCRIBE

PSUBSCRIBE   pattern [pattern … ] --- 訂閱與給定模式相比對的所有頻道

PUNSUBSCRIBE

PUNSUBSCRIBE [channel [channel … ]] --- 退訂給定的模式,如果執行時沒有給定任何模式,那麼退訂所有模式

其他指令

SORT

SORT   source-key [BY pattern] [LIMIT ofset count] [GET pattern [GET pattern ...]]   [ASC|DESC] [ALPHA] [STORE dest-key] ---   根據給定的選項,對輸入清單、集合或者有序集合進行排序,然後傳回或者存儲排序的結果

PERSIST

PERSIST   key-name --- 移除鍵的過期時間

TTL

TTL   key-name --- 檢視給定鍵距離過期還有多少

EXPIRE

EXPIRE   key-name seconds --- 讓給定鍵在指定的秒數之後過期

EXPIREAT

EXPIREAT   key-name timestamp --- 将給定鍵的過期時間設定為給定的UNIX時間戳

PTTL

PTTL   key-name --- 檢視給定鍵距離過期時間還有多少毫秒

PEXPIRE

PEXPIRE   key-name milliseconds --- 讓給定鍵在指定的毫秒數之後過期

PEXPIREAT

PEXPIREAT key-name timestamp-milliseconds ---   将一個毫秒級精度的UNIX時間戳設定為給定鍵的過期時間

本文轉自 許大樹 51CTO部落格,原文連結:http://blog.51cto.com/abelxu/2046809,如需轉載請自行聯系原作者

繼續閱讀