Redis數據類型的基本命令(筆記)

Redis key關鍵字

keys * 羅列所有key

exists key 判斷某個key是否存在

move key db 將某個的key移動到指定的數據庫

expire key 秒 爲指定的key設置過期時間,單位秒

ttl key 查看key還有多少秒過期,-1表示永不過期,-2表示已過期

type key 查看key對應的數據類型

del key 刪除key及對應值

Redis String

set key value 設定key的值爲value

get/del key 獲得或刪除key的值

append key value 將字符串value添加到給定key的值的後面,字符串拼接

strlen key 獲取給定key的值的長度

incr/decr key key的值每次遞增或遞減1,值爲integer

incrby/decrby key X key的值每次遞增或遞減X

getrange key 0 N 獲取指定區間的值,獲取下標爲0到N的字符串

setrange key 0 XX 修改指定區間的字符串爲XX

sete key 秒 value set with expire,修改key的值爲value並給定過期時間

setnx key value set if not exists,如果key不存在,設定key的值爲value

mset/mget/msetnx key1 v1 key2 v2 key3 v3 批量設置或取得鍵值對,msetnx中如果其中一個key存在則所有key都無法設置

Redis List

lpush/rpush key v1 v2 v3 v4 lpush先進後出,rpush先進先出,lpush每個元素從集合頭部添加,rpush每個元素從集合尾部添加

lrange key 0 -1 獲取指定下標範圍的值,lpush在最上面插入,rpush在最下面插入

lpop/rpop key pop出一個value,若以lrange的值來看,lpop取出最上面的一個值,rpop取出最下面的一個值。

lindex key X 按照下標索引X獲得元素(從上到下)

llen key 獲取list元素長度

lrem key N value 刪除list中N個value,以lrange列出的值中從上往下的刪N個,批量刪除

ltrim key 0 N 取出list中指定下標範圍的值,並將取出的值覆蓋原來的list,即刪除指定範圍外的值

rpoplpush list1 list2 將list1中最下面的值取出,放入list2中最上面

lset key index value 修改指定索引的值,索引順序從上到下

linsert key before/after v1 v2 在v1的前面或後面插入v2

List總結:
1.它是一個字符串鏈表,left、right都能插入添加
2.若鍵不存在,創建新的鏈表,若鍵存在,新增內容
3.若值全移除,則對應的鍵也消失
4.鏈表的操作頭和尾效率都高,但對中間元素操作效率就較低了

Redis Set

sadd key v1 v2 v3 添加元素,會自動去掉重複的值

smembers key 羅列所有成員元素

sismember key value 判斷value是否爲key中元素

scard key 獲取集合中元素個數

srem key value 刪除key中某個元素

srandmember key N 從集合中隨機顯示N個元素

spop key 從集合中隨機取出一個元素

smove key1 key2 value 將key1中某個元素移動到key2中

sdiff/sinter/sunion key1 key2 顯示key1和key2的差集,交集,補集

sdiff key1 key2 顯示key1中key2不存在的元素

Redis Hash

hset user id 1 添加鍵值對

hget user id 獲取值

hmset user id 1 age 13 批量添加鍵值對

hmget user id age 批量獲取值

hgetall 獲取所有鍵值對

hdel user id 刪除鍵值對

hlen user 獲取鍵值對個數

hexists user id 判斷集合中某個鍵值是否存在

hkeys/hvals user 獲取所有的key或所有的value

hincrby/hincrbyfloat user id N/N.NN 集合中某個鍵的值每次遞增N或N.NN

hsetnx user id 1 若添加的鍵已存在則不操作

Redis Zset

zadd key score1 v1 score2 v2 score3 v3 添加元素並設置分數

zrange key 0 N 給定下標範圍的顯示集合元素,根據分數從小到大排列

zrange key 0 N withscores 帶分數列舉元素

zrangebyscore key score1 score2 列舉出集合中分數在【score1,score2】之間的元素

zrangebyscore key (score1 score2 “(“爲不包含的意思,列舉分數在(score1,score2]之間的元素

zrangebyscore key score1 score2 limit x y 列舉出元素後,從下標爲x的元素開始,篩選出y個元素

zrem key value 刪除value

zcard key 獲得集合value個數

zcount key score1 score2 統計score1和score2之間有多少個元素,包含score1,score2

zrank key value 獲取value在集合中的下標

zrevrank key value 逆序獲取value在集合中的下標

zscore key value 獲取value對應的分數

zrevrange key 0 N 給定下標範圍的顯示集合元素,下標是逆序的

zrevrangebyscore key score2 score1 列舉出集合中分數在【score1,score2】之間的元素,根據分數從大到小的顯示

發佈了69 篇原創文章 · 獲贊 20 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章