Redis02 使用Redis數(shù)據(jù)庫(String類型)全面解析
一 String類型
首先使用啟動服務(wù)器進程 :
redis-server.exe
1. Set
設(shè)置Key對應(yīng)的值為String 類型的value。
例子:向 Redis數(shù)據(jù)庫中插入一條數(shù)據(jù)類型為String 的記錄。
在客戶端輸入命令:
C:\software\redis\64bit>redis-cli.exe -h 127.0.0.1 -p 6379 redis 127.0.0.1:6379> set foo test OK redis 127.0.0.1:6379> get foo "test"
2.setnx
設(shè)置key對應(yīng)的值為string類型的value,如果key已經(jīng)存在,返回0,nx是not exist的意思。命令簡單的理解為: 設(shè)置一個key,如果可以key對應(yīng)的值不存在才更新值。
redis 127.0.0.1:6379> setnx foo1 aaa (integer) 1 redis 127.0.0.1:6379> get foo1 "aaa" redis 127.0.0.1:6379> setnx foo1 bbb (integer) 0
3. setex
設(shè)置key對應(yīng)的值為string類型的value,并制定此鍵值對應(yīng)的有效期。
例如:添加一個haircolor=red的鍵值對,并指定有效期為10秒。
redis 127.0.0.1:6379> setex haircolor 10 red OK redis 127.0.0.1:6379> get haircolor "red" redis 127.0.0.1:6379> get haircolor (nil)
4 setrange
設(shè)置指定key的value的子字符串
例如: 我們希望將 xpxiaowu的126郵箱替換為gmail郵箱。
redis 127.0.0.1:6379> set name abcde@126.com OK redis 127.0.0.1:6379> setrange name 6 gmail.com (integer) 15 redis 127.0.0.1:6379> get name "abcde@gmail.com"
5.mset
一次設(shè)置多個key的值,成功返回ok表示所有的值都設(shè)置了,失敗返回0表示沒有任何值被設(shè)置。
redis 127.0.0.1:6379> mset key1 wangwu key2 lisi OK redis 127.0.0.1:6379> get key1 "wangwu" redis 127.0.0.1:6379> get key2 "lisi"
6.msetnx
一次設(shè)置多個key的值,成功返回ok,表示所有的值都設(shè)置了,失敗返回0,表示沒有沒任何值被設(shè)置,但是不會覆蓋已經(jīng)存在的key.
如果有一個key沒有設(shè)置成功,其他key都不會設(shè)置成功。
redis 127.0.0.1:6379> msetnx key1 aaa key2 bbb key3 ccc (integer) 0 redis 127.0.0.1:6379> get key1 "wangwu" redis 127.0.0.1:6379> get key2 "lisi" redis 127.0.0.1:6379> get key3 (nil) redis 127.0.0.1:6379> msetnx key3 aaa key4 bbb key5 ccc (integer) 1 redis 127.0.0.1:6379> get key1 "wangwu" redis 127.0.0.1:6379> get dkey2 (nil) redis 127.0.0.1:6379> get key3 "aaa" redis 127.0.0.1:6379> get key4 "bbb" redis 127.0.0.1:6379> get key5 "ccc"
7. get 獲得可以對應(yīng)得string 值,如果key不存在返回nil .
getset 設(shè)置key的值,并返回key 的舊值。
getrange
獲取key對應(yīng)的value值的子字符串。
getrange name 0 5
mget
一次獲取多個key的值,如果對應(yīng)key不存在則對應(yīng)返回nil.
redis 127.0.0.1:6379> mget key1 key2 key3 key4 key5
1) "wangwu"
2) "lisi"
3) "aaa"
4) "bbb"
5) "ccc"
8. incr
對key的值做加加操作,并返回新的值。
incrby
同incr 類似,加指定值,key 不存在時候回設(shè)置key,并認(rèn)為原來的value是0.
redis 127.0.0.1:6379> set key6 0 OK redis 127.0.0.1:6379> get key6 "0" redis 127.0.0.1:6379> incr key6 (integer) 1 redis 127.0.0.1:6379> set key7 1 OK redis 127.0.0.1:6379> get key7 "1" redis 127.0.0.1:6379> incrby key7 5 (integer) 6 redis 127.0.0.1:6379> get key7 "6"
decr
對key的值做減減操作。
decrby
同decr類似,減指定值。
9. append
給指定key的字符串追加value,返回新字符串值的長度。
redis 127.0.0.1:6379> get key6 "1" redis 127.0.0.1:6379> append key6 @163.com (integer) 9 redis 127.0.0.1:6379> get key6 1@163.com
以上所述是小編給大家介紹的Redis02 使用Redis數(shù)據(jù)庫(String類型)全面解析,希望對大家有所幫助,如果大家想了解更多內(nèi)容,敬請關(guān)注腳本之家!
- Redis教程(二):String數(shù)據(jù)類型
- RedisTemplate常用操作方法總結(jié)(set、hash、list、string等)
- Python操作redis實例小結(jié)【String、Hash、List、Set等】
- Redis String 類型和 Hash 類型學(xué)習(xí)筆記與總結(jié)
- 淺談RedisTemplate和StringRedisTemplate的區(qū)別
- Redis?存儲對象信息用?Hash?和String的區(qū)別
- Java三種獲取redis的連接及redis_String類型演示(適合新手)
- Redis中的String類型及使用Redis解決訂單秒殺超賣問題
- Redis基本數(shù)據(jù)類型String常用操作命令
- 一文搞懂Redis最常用String字符串技能
相關(guān)文章
redis數(shù)據(jù)類型及應(yīng)用場景知識點總結(jié)
在本篇文章里小編給大家整理的是關(guān)于2020-02-02redis數(shù)據(jù)結(jié)構(gòu)之intset的實例詳解
這篇文章主要介紹了redis數(shù)據(jù)結(jié)構(gòu)之intset的實例詳解的相關(guān)資料, intset也即整數(shù)集合,當(dāng)集合保存的值數(shù)量不多時,redis使用intset作為其底層數(shù)據(jù)保存結(jié)構(gòu),希望通過本文能幫助到大家,需要的朋友可以參考下2017-09-09redis集群搭建_動力節(jié)點Java學(xué)院整理
這篇文章主要介紹了redis集群搭建,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-08-08redis中opsForList().range()的使用方法詳解
這篇文章主要給大家介紹了關(guān)于redis中opsForList().range()的使用方法,文中通過實例代碼以及圖文介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用redis具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2023-03-03Redis發(fā)布訂閱和實現(xiàn).NET客戶端詳解
發(fā)布訂閱在應(yīng)用級其作用是為了減少依賴關(guān)系,通常也叫觀察者模式。主要是把耦合點單獨抽離出來作為第三方,隔離易變化的發(fā)送方和接收方。下面這篇文章主要給大家介紹了關(guān)于Redis發(fā)布訂閱和實現(xiàn).NET客戶端的相關(guān)資料,需要的朋友可以參考下2017-03-03Redis+Caffeine實現(xiàn)分布式二級緩存組件實戰(zhàn)教程
這篇文章主要介紹了Redis+Caffeine實現(xiàn)分布式二級緩存組件實戰(zhàn)教程,介紹了分布式二級緩存的優(yōu)勢,使用組件的方法,通過示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2022-08-08redis?Template.opsForValue()中方法實例詳解
這篇文章主要介紹了redis?Template.opsForValue()中方法講解,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-05-05利用redis實現(xiàn)分布式鎖,快速解決高并發(fā)時的線程安全問題
這篇文章主要介紹了利用redis實現(xiàn)分布式鎖,快速解決高并發(fā)時的線程安全問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01