Redis基本命令手冊——五大類型

目錄

一:基本操作

二:字符串(String)

三:哈希(Hash)

四:列表(List)

五:集合(Set)

六:有序集合(Zset)


一:基本操作

set key1 123 (設置鍵值對 key1:123)

get key1(獲取key1的value值)

keys key* ,keys key?,keys key[12](匹配符合開頭是key的鍵,*代表任意字符,?代表單個字符,[12]代表只能匹配key1或key2)

exists key(是否存在key)

del key(刪除key)

ttl key(查看key的過期時間)

pttl key(查看key的毫秒過期時間)

type key(查看key的類型)

Object encoding key(獲取key的內部編碼方式)

二:字符串(String)

mset key1 10 key2 29 key3 30 (批量設置key1,key2,key3)


mget key1 key2 key3(批量獲取key1,key2,key3)


setnx key1 1(key1不存在設置成功,key1存在設置失敗)

set key1 1 xx(key1存在設置成功,不存在設置失敗)


setex key1 10 value(設置key1并設置過期時間10秒)


psetex key1 10000 value(設置key1過期時間10000毫秒)


incr key(將key的value值+1,如果key不存在value視為0,只能對整數操作,如果不是整數會報錯)


incrby key 10(將key的value加10,如果key不存在value視為0,只能對整數操作,如果不是整數會報錯)


decr key(將key的value值-1,如果key不存在value視為0,只能對整數操作,如果不是整數會報錯)


decrby key 10(將key的value減10,如果key不存在value視為0,只能對整數操作,如果不是整數會報錯)


incrbyfloat key 1.23(將key的值增加1.23,如果key不存在視為0,如果 key 對應的不是 string,或者不是?個浮點數,則報錯。允許采?科學計數法表?浮點數


append key? qwe(將qwe追加到key的value的后面,如果不存在key等同于set)


getrange key 1 3(獲取key的value下標為1到3位置的字符串)

getrange key 0? -1(獲取key的value下標為0到len-1位置的字符串)


setrange key 1 fad(從偏移量1開始設置字符串fad)


strlen key(獲取key的長度,如果key不是字符串報錯)

三:哈希(Hash)

hset map key1 ?10(插入hash鍵值對key1 : 10,map是redis中的key)


hget map key1(獲取map中key1的value值)


hexists map key1(判斷hash中是否有key1字段)


?hdel map key1 key2(刪除hash中的key1,key2)


hkeys map(獲取hash中的所有字段)


hvals map(獲取hash中的所有值)


hgetall map(獲取所有hash中的所有字段和值)


hmget map key1 key2 key3(一次獲取hash中多個字段的值)


hlen map(獲取hash中所有字段的個數)


hsetnx map key1 ddd(如果map中key1不存在設置ddd成功,如果key1存在則設置ddd失敗)


hincrby map key1 10將 map?中key1對應的數值添加整數10


hincrbyfloat map key1 1.24(將map中key1對應數值添加浮點數1.24)

四:列表(List)

lpush mylist 1 2 3 1 5(將1 2 3 1 5按照頭插的方式插入mylist中)


lrange mylist 0? -1(獲取下標為0到len-1的所有元素)


lpushx list aa ?dd (如果list存在則頭插aa dd 如果不存在則直接返回什么都不插入)


rpush?mylist 1 2 3 1 5(將1 2 3 1 5按照尾插的方式插入mylist中)


rpushx?list aa ?dd( 如果list存在則尾插aa dd 如果不存在則直接返回什么都不插入)


lpop mylist(從mylist左側取出元素,頭刪)


rpop mylist(從mylist右側取出元素,尾刪)


lindex mylist 1(從mylist中獲取從左數下標為1的元素)


linsert mylist before I love(在mylist的I前插入love,如果不存在I,則返回)

linsert mylist after?I love(在mylist的I后插入love,如果不存在I,則返回)


llen mylist (獲取mylist的長度)


lrem list 1 value(從左移除一個值為value的元素,正數為從左)

lrem list -1 value(從右移除一個值為value的元素,負數為從右)

lrem list 0 value(移除所有值為value的值,0為移除所有)


ltrim list 1 3(只保留list中下標為1到3的元素)


lset list 1 hello(將list下標為1的值設置為hello)


blpop list 10(如果list中有元素,與lpop相同,如果沒元素,阻塞十秒,十秒內有元素插入了從左彈出元素,十秒后還沒元素插入返回nil)


brpoplist 10(如果list中有元素,與rpop相同,如果沒元素,阻塞十秒,十秒內有元素插入了從右彈出元素,十秒后還沒元素插入返回nil)

五:集合(Set)

sadd myset q w r t e y q q q(向集合中添加q w t e y 重復元素不會被重復添加)


smembers myset(從集合中獲取所有的元素)


sismember myset q(判斷myset集合中存不存在q元素)


spop myset 2(從myset集合中隨機彈出兩個元素,如果不指定數量則彈出一個)


srandmember myset 3(從myset集合中隨機返回三個元素,不指定數量只返回一個)

scard myset(統計myset集合中有多少個元素)


smove myset yourset w(將w元素從myset集合中移動到yourset集合中)


srem yourset d(將元素d從yourset集合中刪除)


sinter myset yourset(將myset集合和yourset集合取交集)


sinterstore?resultset myset yourset(將myset和yourset取到交集的元素放到resultset中)


sunion myset yourset(將myset集合和yourset集合取并集)


sunionstore resultset myset yourset(將myset和yourset取到并集的元素放到resultset中)


sdiff myset yourset(將myset集合和yourset集合取差集,myset-yourset)


sdiffstore?resultset myset yourset(將myset和yourset取到差集的元素放到resultset中)

六:有序集合(Zset)

zadd myzset 3 hello 5 world(向有序集合myzset中添加元素hello分數3,元素world分數5)


zcard myzset(返回myzset有序集合中的元素個數)


zcount myzset 3 5?(返回分數在3 和5之間(包含3和5)的元素的個數)


zrange myzset 0 1 [withscores](返回myzset集合中在0到1區間的元素,按照分數升序返回)


zrevrange myzset 0 -1 [withscores](返回在myzset集合中在0到 len-1區間的元素,按照分數降序返回)


?zrangebyscore myzset 3 5 [withscores](返回在myzset集合中分數在3到5之間的元素)


zpopmax myzset 2(彈出myzset集合中分數最高的兩個元素,如果不指定數量只彈出一個)


bzpopmax myzset 10(彈出myzset集合中分數最高的元素,如果集合中沒有元素則阻塞10秒,如果十秒內添加進新的元素,則彈出,否則返回nil)


zpopmin?myzset 2(彈出myzset集合中分數最低的兩個元素,如果不指定數量只彈出一個)


bzpopmin?myzset 10(彈出myzset集合中分數最低的元素,如果集合中沒有元素則阻塞10秒,如果十秒內添加進新的元素,則彈出,否則返回nil)


zrank myzset t(返回myzset有序集合中t元素的排名(升序))


zrevrank?myzset t(返回myzset有序集合中t元素的排名(降序))


zscore myzset t(返回myzset有序集合中t元素的分數)


zrem myzset t q(刪除myzset有序集合中的t元素和q元素)


zremrangebyrank myzset ?0 2(刪除在按照升序排序的有序集合中,區間在0到2之間的元素)


zremrangebyscore myzset 6 7(刪除myzset有序集合中分數在[6,7]之間的元素)


zincrby yourzset 5 hello(向有序集合yourzset中hello元素的分數增加5)

zinterstore result 2 myzset yourzset weights 2 3 aggregate sum(將myzset與yourzset的交集按照權重與分數相乘再相加的方式將結果放入result有序集合中)

?

zunionstore與上相同?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/73906.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/73906.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/73906.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【C++】動態規劃從入門到精通

一、動態規劃基礎概念詳解 什么是動態規劃 動態規劃(Dynamic Programming,DP)是一種通過將復雜問題分解為重疊子問題,并存儲子問題解以避免重復計算的優化算法。它適用于具有以下兩個關鍵性質的問題: 最優子結構&…

Qt動態設置樣式,實現樣式實時切換

文章目錄 概要插件實現界面 核心代碼設置樣式 擴展導入樣式導出樣式 概要 最近需要設計界面,但是使用Qt的Designer只能看到每個界面單獨的樣式,程序中有些事需要主界面調用進行組合的界面,因此需要寫一個插件Ui可以直接輸入樣式內容&#xf…

集成學習之隨機森林

目錄 一、集成學習的含義 二、集成學習的代表 三、集成學習的應用 1、分類問題集成。(基學習器是分類模型) 2、回歸問題集成。(基學習器是回歸模型) 3、特征選取集成。 四、Bagging之隨機森林 1、隨機森林是有多個決策樹&a…

矩陣期望 E 的含義:概率

矩陣期望 E 的含義:概率 期望的含義 在概率論和統計學中,數學期望(或均值,簡稱期望)是試驗中每次可能結果的概率乘以其結果的總和,是最基本的數學特征之一,它反映隨機變量平均取值的大小。用公式表示,如果離散型隨機變量 X X X 可能取值為 x i x_

Qt Graphics View

Graphics View框架是用來處理大量2D圖形對象的,適合需要高效管理和交互的場景,比如繪圖軟件、地圖編輯或者游戲。它和QPainter的區別在于,Graphics View提供了更高級別的對象管理,而QPainter更偏向于直接繪制。 一、核心組件 ?Q…

卷積神經網絡 - 卷積層(具體例子)

為了更一步學習卷積神經網絡之卷積層,本文我們來通過幾個個例子來加深理解。 一、灰度圖像和彩色圖像的關于特征映射的例子 下面我們通過2個例子來形象說明卷積層中“特征映射”的概念,一個針對灰度圖像,一個針對彩色圖像。 例子 1&#x…

xlsx.utils.json_to_sheet函數詳解

xlsx.utils.json_to_sheet 是 xlsx 庫中的一個實用函數,用于將 JSON 數據轉換為 Excel 工作表對象。這個函數非常有用,尤其是在你需要從數據庫或其他數據源獲取數據并將其導出到 Excel 文件時。 函數簽名 XLSX.utils.json_to_sheet(data, opts)data&am…

2025-03-17 學習記錄--C/C++-PTA 習題4-7 最大公約數和最小公倍數

合抱之木,生于毫末;九層之臺,起于累土;千里之行,始于足下。💪🏻 一、題目描述 ?? 習題4-7 最大公約數和最小公倍數 本題要求兩個給定正整數的最大公約數和最小公倍數。 輸入格式: 輸入在一…

【源碼閱讀】多個函數抽象為類(實現各種類型文件轉為PDF)

目錄 一、原始函數二、類三、轉換過程 一、原始函數 最開始就是寫了幾個函數(包括doc、excel、ppt類型的文件)轉換為pdf,需要將這些函數形成一個類。相似的一類函數就可以組成一個實現特定功能的類 import subprocess import pandas as pd i…

VSCode擴展工具Copilot MCP使用教程【MCP】

MCP(Model Context Protocol,模型上下文協議) ,2024年11月底,由 Anthropic 推出的一種開放標準,旨在統一大型語言模型(LLM)與外部數據源和工具之間的通信協議。本文章教你使用VSCode…

【leetcode100】搜索插入位置

1、題目描述 給定一個排序數組和一個目標值,在數組中找到目標值,并返回其索引。如果目標值不存在于數組中,返回它將會被按順序插入的位置。 請必須使用時間復雜度為 O(log n) 的算法。 示例 1: 輸入: nums [1,3,5,6], target 5 輸出: 2…

【小白向】Word|Word怎么給公式標號、調整公式字體和花括號對齊

【小白向】Word|Word怎么給公式標號、調整公式字體和花括號對齊 我的版本:Word 2021 如需快速查看關鍵步驟,請直接閱讀標紅部分。 如果遇到無法調整的情況,可以直接下載我的示例文檔進行參考:花括號和其他的示例公式.…

【算法day15】最接近的三數之和

最接近的三數之和 給你一個長度為 n 的整數數組 nums 和 一個目標值 target。請你從 nums 中選出三個整數,使它們的和與 target 最接近。 這里是引用 返回這三個數的和。 假定每組輸入只存在恰好一個解。 https://leetcode.cn/problems/3sum-closest/submissions/61…

Blender-MCP服務源碼5-BlenderSocket插件安裝

Blender-MCP服務源碼5-BlenderSocket插件安裝 上一篇講述了Blender是基于Socket進行本地和遠程進行通訊,現在嘗試將BlenderSocket插件安裝到Blender中進行功能調試 1-核心知識點 將開發的BlenderSocket插件安裝到Blender中 2-思路整理 1)將SocketServe…

【MySQL數據庫】存儲過程與自定義函數(含: SQL變量、分支語句、循環語句 和 游標、異常處理 等內容)

存儲過程:一組預編譯的SQL語句和流程控制語句,被命名并存儲在數據庫中。存儲過程可以用來封裝復雜的數據庫操作邏輯,并在需要時進行調用。 類似的操作還有:自定義函數、.sql文件導入。 我們先從熟悉的函數開始說起: …

ASP3605抗輻照加固同步降壓調節器——商業航天電源芯片解決方案新選擇

ASP3605企業宇航級型號ASP3605S2U通過SEU≥75 MeVcm/mg與SEL≥75 MeVcm/mg抗輻射測試。其輸入電壓4V至15V,輸出電流5A,支持多相級聯與冗余設計,適用于衛星、航天器電源系統。 面向航天場景的核心功能設計 1. 抗輻射與可靠性保障 單粒子效應…

使用fastapi部署stable diffusion模型

使用vscode運行stable diffusion模型,每次加載模型都需要10分鐘,為算法及prompt調試帶來了極大麻煩。使用jupyter解決自然是一個比較好的方案,但如果jupyter由于種種原因不能使用時,fastapi無疑成為了一個很好的選擇。 參考github…

2025-03-16 學習記錄--C/C++-PTA 習題4-4 特殊a串數列求和

合抱之木,生于毫末;九層之臺,起于累土;千里之行,始于足下。💪🏻 一、題目描述 ?? 習題4-4 特殊a串數列求和 給定兩個均不超過9的正整數a和n,要求編寫程序求aaaaaa?aa?a&#x…

ffmpeg庫視頻硬編碼使用流程

?一、硬件編碼核心流程? ?硬件設備初始化 // 創建CUDA硬件設備上下文? AVBufferRef *hw_device_ctx NULL; av_hwdevice_ctx_create(&hw_device_ctx, AV_HWDEVICE_TYPE_CUDA, NULL, NULL, 0);// 綁定硬件設備到編碼器上下文? codec_ctx->hw_device_ctx av_buffer_…

【設計模式】3W 學習法全面解析 7 大結構型模式:Java 實戰 + 開源框架應用

3W 學習法總結結構型模式(附 Java 代碼實戰及開源框架應用) 結構型模式 主要關注 類與對象的組合,確保不同組件之間能夠高效協作,提高系統的靈活性和可維護性。本文采用 3W 學習法(What、Why、How)&#x…