redis命令大全參考手冊


redis功能強大,支持數據類型豐富,以下是redis操作命令大全,基本上涵蓋了redis所有的命令,並附有解釋說明,大家可以收藏、參考,你一定要知道的是:redis的key名要區分大小寫,在redis中除了 和空格外,其他的字符都可以做為key名,且長度不做限制,不過為了性能考慮,一般key名不要設置的太長(本文轉自網絡僅供本人學習之用)

一個redis命令很不錯的網站 http://www.daixiaorui.com/manual/redis-setex.html

一:redis命令基本篇

1.【 set key value 】 存入一個key和值。如:set myname reson

2.【 get key 】 讀取一個key的值。

3.【 del key 】 刪除一個key。

4.【 del key1 key2 ... keyN 】 刪除多個key。如:del myname1 myname2

5.【 exists key 】 判斷一個key是否存在。

6.【 type key 】 查看key的類型。

7.【 rename key keyNew 】 重命名key名。如:rename myname myname2

8.【 dbsize 】 查看當前庫中的key的條數。

9.【 expire key time 】 指定key的過期時間,單位為秒。如:expire myname 9(設置9秒后過期)

10.【 ttl key 】 查看redis有多長時間過期,單位為秒。

11.【 keys * 】 列出當前庫中所有的key名。

12.【 keys a* 】 列出當前庫中所有以字符串“a"開頭的key。

13.【 select db-index 】 選擇一個數據庫,如選擇第一個數據庫:select 0;選擇第二個 select 1;默認有16個數據庫,這個值可以在redis.conf中配置。

14.【 flushdb 】 清掉當前庫中所有的key(生產環境下需謹慎操作)。

15.【 flushall 】 清掉所有庫中全部的key(生產環境下需謹慎操作)。

16.【 mset key1 value1 key2 value2 ... keyN valueN 】 一次性存入多個key和值。

17.【 mget key1 key2 ... keyN 】 一次性讀取多個key。

18.【 incr key 】 可以對key類型+1的操作(相當於編程語言里面的++),只能操作number型,操作字符串會報錯。可對新值進行操作。

19.【 decr key 】 可以對key類型-1的操作(相當於編程語言里面的--),只能操作number型,操作字符串會報錯。

20.【 incrby key num 】 同incr,對key的值加num,比如 incrby aa 10,對aa+10。

21.【 decrby key num 】 同上,對key的值減num。

22.【 append key value 】 對指定key的字符串進行追加,如果key為整形,會被轉為字符串。如aa的值為9,執行append aa 10后,會變成910。 

23.【 substr key start end 】 對key進行截取start到end個字符。如aa的值為:abcdef,執行substr aa 2 3后,返回“cd”。

二:redis鏈表類型(list)命令

24.【 lpush key value 】 往隊列頭部插入一個元素

25.【 rpush key value 】 從尾部插入一個元素

26.【 lpop key 】 從隊列頭部刪掉一個元素

27.【 rpop key 】 從隊列尾部刪掉一個元素,並返回被刪除元素的值

28.【 llen 】 返回隊列的長度,即里面有多少個元素。不存在key返回0,不為隊列類型的key會返回報錯。

29.【 lrange key start end 】 返回隊列從start到end之間的元素信息。

30.【 ltrim key start end 】 截取一個隊列,只保留指定區間內的元素。

三:redis無序集合set類型命令

31.【 sadd key vaule 】 往集合中插入一個元素,如果value值已存在集合中,則返回0,不會被重復插入。

32.【 sinter key1 key2 ... keyN 】 取出n個key之間的交集。比如 key1里面有值a,b,c,d,e,key2里面有d,e,f,sinter key1 key2返回d,e。

33.【 sunion key1 key2 ... keyN 】 取出n個key之間的並集。比如 key1里面有值a,b,c,d,e,key2里面有d,e,f,sunion key1 key2返回a,b,c,d,e,f。

34.【 sdiff  key1 key2 】 取出n個key之間的差集。比如 key1里面有值a,b,c,d,e,key2里面有d,e,f,sdiff key1 key2返回a,b,c;反過來sdiff key2 key1返回f。

35.【 smembers key 】 返回key集合中所有的元素,結果是無序的。

36.【 sismember key value 】 查看value這個值是否在key集合中。存在返回1,不存在返回0。

37.【 scard key 】 返回集合中有多少個元素。

38.【 smove key1 key2 value 】 把value從key1中移到key2中去。

39.【 srem key value1 value2 ... valueN 】 從key集合中刪掉某些元素

四:redis有序集合sorted set命令

40.【 zadd key v k 】 往key中添加一個元素,k為鍵,v為值。如:zadd artHits 99 12表示id為12的文章點擊量為99次。

41.【 zrange key start end 】 根據v的值由小到大進行排序來獲得start到end之間的元素。

注:0表示第一個元素,-1表示最后一個元素,-2表示倒數第二個元素,以此類推,如果要獲取第一個到倒數第三個之間的元素,命令為:zrange key 0 -3。

42.【 zrevrange key start end 】 同上,根據v的值由大到小進行排序來獲得start到end之間的元素。可以輕松取出點擊量最高的前n篇文章。

43.【 zremrangebyrank key start end 】 刪除集合中的元素。排序的方式為按照v由小到大的順序,如果要刪除key集合中的第一個值,則運行 zremrangebyrank artHits 0 0;刪除前3個值:zremrangebyrank artHits 0 2。

44.【 zcard 】 返回key集合中元素的個數。

45.【 zrank key k 】 返回值k在集合key中排第幾位,是按照v由小到大的順序。排第一名返回0,第二返回1,以此類推。

46.【 zrevrank key k 】 同上,不同的是,按照v由大到小的順序。可以輕松取出點擊量最高的文章。

47.【 zscore key k 】 取出集合key中鍵為k對應的值v。

48.【 zrem key k 】 刪除集合中指定元素。

49.【 zincrby key num k 】 給集合key中的元素k加上num,值針對整型。比如 zincrby artHits 3 12,給id為12的文章加上3個點擊量。此時zscore artHits 12的結果是99+3為102。

redis哈希hash類型命令

50.【 hset key field value 】 設置hash field為指定值,如果key不存在,則先創建。

51.【 hmset key field1 value1 ... fieldN valueN 】 同時設置多個值。

52.【 hget key field 】  獲取指定的hash field

53.【 hmget key field1 field1 ... fieldN 】 獲取指定的多個hash field

54.【 hincrby key field num 】 將指定的hash field加上指定的值。

55.【 hexists key field 】 查看指定field是否存在。

56.【 hdel key field 】 刪除指定的hash field。

57.【 hlen key 】 返回指定hash中field的數量。

58.【 hkeys key 】 返回hash所有的field。

59.【 hvals 】 返回hash中所有的value。

60.【 hgetall key 】 返回hash中所有的field和value。

文章出自:http://www.daixiaorui.com/read/199.html 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM