這里寫目錄標題
- 第一章、Redis 命令大全
- 1.1)通用命令
- 語法:ping
- 語法:dbsize
- 語法:select db
- 語法:flushdb
- 語法:exit 或 quit
- 語法:redis-cli
- 1.2)Redis 的 Key 的操作命令
- 語法:keys pattern
- 語法:exists key [key…]
- 語法:expire key seconds
- 語法:ttl key
- 語法:type key
- 語法:del key [key…]
- 1.3) 字符串類型的value操作命令
- 語法:set key value
- 語法: get key
- 語法:incr key
- 語法:decr key
- 語法:append key value
- 語法:strlen key
- 語法:getrange key start end
- 語法:setrange key offset value
- 語法:mset key value [key value…]
- 語法:mget key [key …]
- 1.4)哈希類型的value操作命令
- 語法:hset hash 表的 key field value
- 語法:hget key field
- 語法:hmset key field value [field value…]
- 語法:hmget key field [field…]
- 語法:hgetall key
- 語法:hdel key field [field…]
- 語法:hkeys key
- 語法:hvals key
- 語法:hexists key field
- 1.5)列表list類型的value操作命令
- 語法:lpush key value [value…]
- 語法:rpush key value [value…]
- 語法:lrange key start stop
- 語法:lindex key index
- 語法:llen key
- 語法:lrem key count value
- 語法:lset key index value
- 語法:linsert key BEFORE|ALFTER pivot value
- 1.6)集合類型的value操作命令
- 語法:sadd key member [member…]
- 語法:smembers key
- 語法:sismember key member
- 語法:scard key
- 語法:srem key member [member…]
- 語法:srandmember key [count]
- 語法:spop key [count]
- 1.7)有序集合類型的value操作命令
- 語法:zadd key score member [score member…]
- 語法:zrange key start stop [WITHSCORES]
- 語法:zrevrange key start stop [WITHSCORES]
- 語法:zrem key member [member…]
- 語法:zcard key
- 語法:zrangebyscore key min max [WITHSCORES ] [LIMIT offset count]
- 語法:zrevrangebyscore key max min [WITHSCORES ] [LIMIT offset count]
- 語法:zcount key min max
第一章、Redis 命令大全
1.1)通用命令
①溝通命令,查看狀態, 返回 PONG
語法:ping
②查看當前數據庫中 key 的數目:
語法:dbsize
③redis默認十六個庫,切換庫命令:
語法:select db
④刪除當前庫的數據:
語法:flushdb
⑤退出當前 redis 連接:
語法:exit 或 quit
⑥登錄自帶redis 命令行客戶端:
語法:redis-cli
1.2)Redis 的 Key 的操作命令
①查看key
語法:keys pattern
通配符:
* :表示 0-多個字符 ,例如:keys * 查詢所有的 key , *表示 0 或多個字符
?:表示單個字符,例如:wo?d , 匹配 word , wood
②判斷 key 是否存在
語法:exists key [key…]
exists key
exists key1 key2...
③ 設置 key 的生存時間,超過時間,key 自動刪除。單位是秒。
語法:expire key seconds
④以秒為單位,返回 key 的剩余生存時間(ttl: time to live)返回值:
-1 :沒有設置 key 的生存時間, key 永不過期。
-2 :key 不存在
語法:ttl key
⑤查看 key 所存儲值的數據類型返回值:字符串表示的數據類型
none (key 不存在)
string (字符串)
list (列表)
set (集合)
zset (有序集)
hash (哈希表)
語法:type key
⑥刪除指定存在的 key ,不存在的 key 忽略。
返回值:數字,刪除的 key 的數量。
語法:del key [key…]
1.3) 字符串類型的value操作命令
①將字符串值 value 設置到 key 中,已經存在的 key 設置新的 value,會覆蓋原來的值。
語法:set key value
②獲取 key 中設置的字符串值
語法: get key
③將 key 中儲存的數字值加 1,如果 key 不存在,則 key 的值先被初始化為 0 再執行 incr 操作(只能對數字類型的數據操作)
語法:incr key
④將 key 中儲存的數字值減1,如果 key 不存在,則么 key 的值先被初始化為 0 再執行 decr 操作(只能對數字類型的數據操作)
語法:decr key
⑤如果 key 存在, 則將 value 追加到 key 原來舊值的末尾如果 key 不存在, 則將 key 設置值為 value
返回值:追加字符串之后的總長度
語法:append key value
⑥返回 key 所儲存的字符串值的長度返回值:
如果key存在,返回字符串值的長度
key不存在,返回0
語法:strlen key
⑦獲取 key 中字符串值從 start 開始 到 end 結束 的子字符串,包括 start 和 end, 負數表示從字符串的末尾開始, -1 表示最后一個字符
返回值:截取的子字符串。
語法:getrange key start end
⑧用 value 覆蓋(替換)key 的存儲的值從 offset 開始,不存在的 key 做空白字符串。
返回值:修改后的字符串的長度
語法:setrange key offset value
⑨同時設置一個或多個 key-value 對
語法:mset key value [key value…]
⑩獲取(一個或多個)給定 key 的值
返回值:包含所有 key 的列表
語法:mget key [key …]
1.4)哈希類型的value操作命令
①哈希類型field(域 )和 value 的隱射表,value分為field和value,hset可將key中的值設置為value,如果 key 不存在,則新建 hash 表,執行賦值,如果有 field ,則覆蓋值。
返回值:
如果 field 是 hash 表中新 field,且設置值成功,返回 1
如果 field 已經存在,舊值覆蓋新值,返回 0
語法:hset hash 表的 key field value
key鍵已經存在則覆蓋
②獲取哈希表 key 中給定域 field 的值
返回值:field 域的值,如果 key 不存在或者 field 不存在返回 nil
語法:hget key field
獲取不存在的 field,返回nil
③同時將多個 field-value (域-值)設置到哈希表 key 中,此命令會覆蓋已經存在的 field, 若hash 表 key 不存在,創建空的 hash 表,執行 hmset.
返回值:設置成功返回 ok, 如果失敗返回一個錯誤
語法:hmset key field value [field value…]
key 類型不是 hash,產生錯誤
④獲取哈希表 key 中一個或多個給定域的值
返回值:返回和 field 順序對應的值,如果 field 不存在,返回 nil
語法:hmget key field [field…]
⑤獲取哈希表 key 中所有的域和值
返回值:以列表形式返回 hash 中域和域的值 ,key 不存在,返回空 hash
語法:hgetall key
不存在的 key,返回空列表
⑥刪除哈希表 key 中指定域 field,不存在 field 直接忽略
返回值:成功刪除的 field 的數量
語法:hdel key field [field…]
⑦查看哈希表 key 中的所有 field 域
返回值:包含所有 field 的列表,key 不存在返回空列表
語法:hkeys key
⑧返回哈希表中所有域的值
返回值:包含哈希表所有域值的列表,key 不存在返回空列表
語法:hvals key
⑨查看哈希表 key 中,給定域 field 是否存在
返回值:如果 field 存在,返回 1, 其他返回 0
語法:hexists key field
1.5)列表list類型的value操作命令
①將一個或多個值 value 插入到列表 key 的表頭(最左邊),從左邊開始加入值,從左到右的順序依次插入到表頭,返回值:數字,新列表的長度
語法:lpush key value [value…]
②將一個或多個值 value 插入到列表 key 的表尾(最右邊),各個 value 值按從左到右的順序依次插入到表尾
返回值:數字,新列表的長度
語法:rpush key value [value…]
③獲取列表 key 中指定區間內的元素,0 表示列表的第一個元素,start , stop 是列表的下標值, -1 表示列表的最后一個元素, start ,stop 超出列表的范圍不會出現錯誤。
返回值:指定區間的列表
語法:lrange key start stop
顯示列表中第 2 個元素,下標從 0 開始
④查詢獲取列表 key 中下標為指定 index 的元素,0 表示列表的第一個元素,start , stop 是列表的下標值, -1 表示列表的最后一個元素,
返回值:指定下標的元素;index 不在列表范圍,返回 nil
語法:lindex key index
⑤獲取列表 key 的長度
返回值:數值,列表的長度; key 不存在返回 0
語法:llen key
⑥根據參數 count 的值,移除列表中與參數 value 相等的元素, count >0 ,從列表的左側向右開始移除; count < 0 從列表的尾部開始移除;count = 0 移除表中所有與 value 相等的值。
返回值:數值,移除的元素個數
語法:lrem key count value
刪除列表中所有的指定元素,刪除所有的 java
⑦將列表 key 下標為 index 的元素的值設置為 value。
返回值:設置成功返回 ok ; key 不存在或者 index 超出范圍返回錯誤信息
語法:lset key index value
⑧將值 value 插入到列表 key 當中位于值 pivot 之前或之后的位置。key 不存在,pivot 不在列表中,不執行任何操作。
返回值:命令執行成功,返回新列表的長度。沒有找到 pivot 返回 -1, key 不存在返回 0。
語法:linsert key BEFORE|ALFTER pivot value
修改列表 arch,在值 dao 之前加入 service
操作不存在的 pivot
1.6)集合類型的value操作命令
①將一個或多個 member 元素加入到集合 key 當中,已經存在于集合的 member 元素將被忽略,不會再加入。
返回值:加入到集合的新元素的個數。不包括被忽略的元素
語法:sadd key member [member…]
②獲取集合 key 中的所有成員元素,不存在的 key 視為空集合
語法:smembers key
③判斷 member 元素是否是集合 key 的成員
返回值:member 是集合成員返回 1,其他返回 0
語法:sismember key member
④獲取集合里面的元素個數
返回值:數字,key 的元素個數。 其他情況返回 0
語法:scard key
⑤刪除集合 key 中的一個或多個 member 元素,不存在的元素被忽略。
返回值:數字,成功刪除的元素個數,不包括被忽略的元素。
語法:srem key member [member…]
⑥只提供 key,隨機返回集合中一個元素;提供了 count 時,count 正數, 返回包含 count 個數元素的集合, 集合元素各不相同。count 是負數,返回一個 count 絕對值的長度的集合, 集合中元素可能會重復多次。
返回值:一個元素;多個元素的集合
語法:srandmember key [count]
隨機顯示集合的一個元素
使用 count 參數, count 是正數
使用 count 參數,count 是負數
⑦隨機從集合中刪除一個元素, count 是刪除的元素個數。
返回值:被刪除的元素,key 不存在或空集合返回 nil
語法:spop key [count]
隨機從集合刪除一個元素
隨機刪除指定個數的元素
1.7)有序集合類型的value操作命令
①將一個或多個 member 元素及其 score 值加入到有序集合 key 中,如果 member 存在集合中,則更新值;score 可以是整數或浮點數
返回值:數字,新添加的元素個數
語法:zadd key score member [score member…]
創建保存學生成績的集合:studentscore
使用浮點數作為 score
②查詢有序集合指定區間內的元素。集合成員按 score 值從小到大來排序。 start, stop 都是從 0 開始。0 是第一個元素,1 是第二個元素。以 -1 表示最后一個成員,-2 表示倒數第二個成員。使用WITHSCORES 選項讓 score 和 value 一同返回。
返回值:自定區間的成員集合
語法:zrange key start stop [WITHSCORES]
顯示集合的全部元素,不使用 WITHSCORES 則不顯示 score
顯示集合全部元素,并使用 WITHSCORES
顯示0,1 二個成員
排序顯示浮點數的 score
③返回有序集 key 中,指定區間內的成員。其中成員的位置按 score 值遞減(從大到小) 來排列。其它同 zrange 命令。
返回值:自定區間的成員集合
語法:zrevrange key start stop [WITHSCORES]
④刪除有序集合 key 中的一個或多個成員,不存在的成員被忽略
返回值:被成功刪除的成員數量,不包括被忽略的成員。
語法:zrem key member [member…]
⑤獲取有序集 key 的元素成員的個數返回值:key 存在返回集合元素的個數, key 不存在,返回 0
語法:zcard key
⑥獲取有序集 key 中,所有 score 值介于 min 和 max 之間(包括 min 和 max)的成員,有序成員是按遞增(從小到大)排序。
min ,max 是包括在內 , 使用符號 ( 表示不包括。 min , max 可以使用 -inf ,
+inf 表示最小和最大 limit 用來限制返回結果的數量和區間。 withscores 顯示 score 和 value
返回值:指定區間的集合數據使用的準備數據
語法:zrangebyscore key min max [WITHSCORES ] [LIMIT offset count]
顯示指定具體區間的集合數據,開區間(不包括 min,max)
顯示整個集合的所有數據
使用 limit 增加新的數據
⑦返回有序集 key 中, score 值介于 max 和 min 之間(默認包括等于 max 或 min )的所有的成員。有序集成員按 score 值遞減(從大到小)的次序排列。其他同 zrangebyscore
語法:zrevrangebyscore key max min [WITHSCORES ] [LIMIT offset count]
⑧返回有序集 key 中, score 值在 min 和 max 之間(默認包括 score 值等于 min 或 max ) 的成員的數量
語法:zcount key min max
工資在 3000-5000 的員工數量