欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Redis的常用命令小結(jié)

 更新時間:2023年06月25日 14:21:28   作者:獨一無二的哈密瓜  
本文主要介紹了Redis的常用命令小結(jié),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

1. Redis 數(shù)據(jù)結(jié)構(gòu)

Redis 是一個鍵值對的數(shù)據(jù)庫, 也就是 key-value 類型的, 這里的 key 一般都是String類型的, value的類型可以有多種.

基本類型:

  • String 類型
  • Hash 類型
  • List 類型
  • Set 類型
  • SortedSet 類型

特殊數(shù)據(jù)類型:

  • Gerspatial 地理位置
  • Hyperloglog 基數(shù)計數(shù)
  • BitMap 位圖

2. Redis 通用命令

命令作用
KEYS查看所有符合模板的key
DEL刪除一個指定的key
EXISTS判斷key是否存在
EXPIRE給key設置有效期,到期會刪除key
TTL查看key的剩余有效期
HELP [command]查看命令的具體用法

注: Redis 的key允許有多個單詞形成層級結(jié)構(gòu), 多個單詞之間用:隔開, 例如 blog:user:1

① KEYS

② DEL

③ EXISTS

④ EXPIRE

⑤ TTL

這里返回 -2 就是刪除了返回 -1 就是存在且沒有過期時間

⑥ 層級結(jié)構(gòu)

3. String 類型

value 為String類型, 根據(jù)不同的字符串格式, 也可以分為幾類

  • string: 普通字符串
  • int: 整數(shù)
  • float: 浮點數(shù)

注: 字符串類型最大空間不能超過512M

可以使用help @string 來查看string類型的所有方法, 這里展示一些常用的命令.

命令作用
SET [key] [value]添加或者修改已經(jīng)存在的一個 String 類型的鍵值對
GET [key]根據(jù) key 獲取 String 類型的 value
MSET [key] [value] ( [key] [value] …)批量添加多個 String 類型鍵值對
MGET [key] ( [key] …)根據(jù)多個key獲取多個String類型的value
INCR [key]讓 key 自增1個
INCRBY [key] [increment]讓 key 自增 increment 個
INCRBYFLOAT [key] [increment]讓浮點型 key 自增 increment 個
SETNX [key] [value]添加一個String類型鍵值對, 前提key不存在,否則不執(zhí)行
SETEX [key] [second] [value]添加一個String類型鍵值對并指定有效時間

① SET

② GET

③ MSET

④ MGET

⑤ INCR

⑥ INCRBY

⑦ INCRBYFLOAT

⑧ SETNX

⑨ SETEX

4. Hash 類型

Hash類型的value, value內(nèi)是 field+value 的格式

可以使用help @hash 來查看string類型的所有方法, 這里展示一些常用的命令.

命令作用
HSET [key] [field] [value] ([filed] [value] …)添加或者修改hash類型key的field的值
HGET [key] [field]獲取一個hash類型key的field的值
HMSET [key] [field] [value] ([filed] [value] …)批量添加多個hash類型key的field的值
HMGET [key] [field] ( [field] …)批量獲取多個hash類型key的field的值
HGETALL [key]獲取hash類型的key中所有的field和value
HKEYS [key]獲取一個hash類型的key中所有的field
HVALS [key]獲取一個hash類型的key中所有的value
HINCRBY [key] [field] [increment]讓hash類型key的字段自增
HSETNX [key] [field] [value]添加一個hash類型的key的field的值, 如果存在就不執(zhí)行

① HSET

這里hset可以添加一個,也可以批量添加

② HGET

這里的hget只能獲取一個key的field的值

③ HMSET 和 HMGET

④ HKEYS 和 HVALS

⑤ HINCRBY

⑥ HSETNX

5. List 類型

這里List可以看成一個雙向鏈表特點: ① 有序 ② 元素可重復 ③ 插入刪除快 ④ 查詢速度一般

命令作用
LPUSH [key] [element] ([element] …)向左側(cè)插入一個或者多個元素
LPOP [key]移除并返回列表左側(cè)的第一個元素, 沒有返回nil
RPUSH [key] [element] ([element] …)向右側(cè)插入一個或者多個元素
RPOP [key]移除并返回列表右側(cè)第一個元素, 沒有返回nil
LRANGE [key] [start] [stop]返回一段范圍內(nèi)的所有元素
BLPOP [key] ([key]…) [timeout]在沒有元素的時候等待指定時間, 而不是返回nil
BRPOP [key] ([key]…) [timeout]在沒有元素的時候等待指定時間, 而不是返回nil

① LPUSH

② LPOP

③ RPUSH

④ RPOP

⑤ LRANGE

⑥ BRPOP

6. Set 類型

和Java的Set類似

特點: 1. 無序 2. 元素不可重復 3. 查找快 4. 支持交集. 并集, 差集功能

命令作用
SADD [key] [member] ([member] …)添加一個元素
SREM [key] [member] ([member] …)刪除一個元素
SCARD [key]返回元素個數(shù)
SISMEMBER [key] [member]判斷是否存在一個元素
SMEMBERS [key]獲取所有的元素
SINTER [key] ([key] … )求key1 和 key2的交集
SDIFF [key] ([key] … )求key1 和 key2的差集
SUNION [key] ([key] … )求key1 和 key2的并集

案例 將下列數(shù)據(jù)用 Redis 的Set集合來存儲
A 的好友有: B , C , D
B 的好友有: C , E , F
利用Set的命令實現(xiàn)下列功能
① 計算A的好友有多少人
② 計算A和B的共同好友
③ 查詢是A的好友卻不是B的好友的人是哪些
④ 查詢A和B的總共有哪些好友
⑤ 判斷B是否是A的好友
⑥ 判斷A是否是B的好友
⑦ A刪除B的好友

首先將好友存入到列表里

① 計算A的好友有多少人

② 計算A和B的共同好友

③ 查詢是A的好友卻不是B的好友的人是哪些

④ 查詢A和B的總共有哪些好友

⑤ 判斷B是否是A的好友

⑥ 判斷A是否是B的好友

⑦ A刪除B的好友

7. SortedSet 類型

是一個可排序的Set集合特點: 1. 可排序 2. 元素不重復 3. 查詢速度快

命令作用
ZADD [key] [score] [member] ([score] [member] …)添加一個或者多個元素, 如果存在,更新score值
ZREM [key] [member] ([member] …)刪除指定元素
ZSCORE [key] [member]獲取指定元素的score值
ZRANK [key] [member]獲取指定元素的排名
ZCARD [key]獲取元素個數(shù)
ZCOUNT [key] [min] [max]統(tǒng)計指定范圍內(nèi)的元素個數(shù)
ZINCRBY [key] [increment] [member]
ZRANGE [key] [min] [max]獲取指定排名范圍內(nèi)的元素
ZRANGEBYSCORE [key] [min] [max]獲取指定score范圍內(nèi)的元素
ZDIFF [numkeys] key ([key] …)差集
ZINTER [numkeys] key ([key] …)交集
ZUNION [numkeys] key ([key] …)并集

所有排名默認是升序, 如果要降序在命令的Z后面添加REV即可, 例如ZREVRANK

案例

將班級的下列學生得分情況存入 Redis 的SortedSet中
A 85, B 89, C 82, D 95, E 78, F 92, G 76
實現(xiàn)以下功能
① 刪除D同學
② 獲取F同學的分數(shù)
③ 獲取C同學的排名
④ 查詢80分以下有幾名同學
⑤ 給F同學加2分
⑥ 查出成績前3名的同學
⑦ 查出成績80分以下的所有同學

首先將成績存入Redis中

① 刪除D同學

② 獲取F同學的分數(shù)

③ 獲取C同學的排名

④ 查詢80分以下有幾名同學

⑤ 給F同學加2分

⑥ 查出成績前3名的同學

⑦ 查出成績80分以下的所有同學

 到此這篇關(guān)于Redis的常用命令小結(jié)的文章就介紹到這了,更多相關(guān)Redis 常用命令內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Redis 配置文件重要屬性的具體使用

    Redis 配置文件重要屬性的具體使用

    Redis在IT公司中的使用率自不必說,今天我們就來介紹一下Redis 配置文件重要屬性的具體使用,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-05-05
  • 利用Redis實現(xiàn)訪問次數(shù)限流的方法詳解

    利用Redis實現(xiàn)訪問次數(shù)限流的方法詳解

    這篇文章主要給大家介紹了關(guān)于如何利用Redis實現(xiàn)訪問次數(shù)限流的相關(guān)資料,文中通過實例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2022-02-02
  • Redis內(nèi)存空間占用及避免數(shù)據(jù)丟失的方法

    Redis內(nèi)存空間占用及避免數(shù)據(jù)丟失的方法

    在現(xiàn)代的互聯(lián)網(wǎng)應用中,Redis作為一種高性能的內(nèi)存數(shù)據(jù)庫,被廣泛應用于緩存、會話管理和消息隊列等場景,然而,Redis的內(nèi)存資源是有限的,過多的內(nèi)存占用可能會導致數(shù)據(jù)丟失所以本文將給大家介紹一下Redis內(nèi)存空間占用及避免數(shù)據(jù)丟失的方法
    2023-08-08
  • 解析高可用Redis服務架構(gòu)分析與搭建方案

    解析高可用Redis服務架構(gòu)分析與搭建方案

    我們按照由簡至繁的步驟,搭建一個最小型的高可用的Redis服務。 本文通過四種方案給大家介紹包含每種方案的優(yōu)缺點及詳細解說,具體內(nèi)容詳情跟隨小編一起看看吧
    2021-06-06
  • Redis實現(xiàn)附近商鋪的項目實戰(zhàn)

    Redis實現(xiàn)附近商鋪的項目實戰(zhàn)

    本文主要介紹了Redis實現(xiàn)附近商鋪的項目實戰(zhàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-01-01
  • Redis分布式鎖的10個坑總結(jié)

    Redis分布式鎖的10個坑總結(jié)

    日常開發(fā)中,經(jīng)常會碰到秒殺搶購等業(yè)務,為了避免并發(fā)請求造成的庫存超賣等問題,我們一般會用到Redis分布式鎖,但是使用Redis分布式鎖,很容易踩坑哦,本文將給大家分析闡述,Redis分布式鎖的10個坑,需要的朋友可以參考下
    2023-05-05
  • Redis中不同持久化方式的差異對比

    Redis中不同持久化方式的差異對比

    大家應該都知道,Redis持久化方式主要有兩種:RDB(Redis DataBase)和AOF(Append-only file),但是他們各自存儲了什么內(nèi)容?有什么差異呢?今天我來給大家做個小試驗,需要的朋友可以參考下
    2024-03-03
  • redis啟動,停止,及端口占用處理方法

    redis啟動,停止,及端口占用處理方法

    今天小編就為大家分享一篇redis啟動,停止,及端口占用處理方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • 一文帶你了解Redis的三種集群模式

    一文帶你了解Redis的三種集群模式

    Redis?的常用的集群方式主要有以下三種,分別是主從復制模式、哨兵模式、Redis-Cluster集群模式,那么下面我們就分別了解一下這三種集群模式的優(yōu)點與缺點
    2023-06-06
  • 完美解決linux上啟動redis后配置文件未生效的問題

    完美解決linux上啟動redis后配置文件未生效的問題

    今天小編就為大家分享一篇完美解決linux上啟動redis后配置文件未生效的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05

最新評論