Redis:存儲字符串(基本概念、命令)


1、Redis存儲String類型

(1)基本概念

一個鍵最大能存儲512M的數據,value不僅可以使字符串還可以是數字,是包含很多種類型的特殊類型

string類型是二進制安全的,意思是redis的string可以包含任意類型的數據,例如:圖片的二進制存儲、字符串、數值等

(2)應用場景

String可用於保存單個字符串或JSON字符串類型的數據

因為String是二進制安全的,可以將一張圖片作為二進制來存儲

計數器:計數粉絲數。因為redis的原子性,不用考慮線程安全的問題。即使有十個用戶同時讀取到一個數據,在他們進行加以操作后,數據的值增加的依舊是十

 

2、String類型的命令

(1)set和get實現字符串存取:

 鍵的名字相同,會對以前的值進行覆蓋:

 (2)setnx命令:如果key不存在則賦值並返回1,如果已經存在則賦值並返回0

127.0.0.1:6379> setnx zhai zzz
(integer) 0
127.0.0.1:6379> setnx qian zhhh
(integer) 1
127.0.0.1:6379> keys *
1) "zhang"
2) "qian"
3) "zhao"
4) "ZHAI"
5) "huangzzz"
6) "zhai"
127.0.0.1:6379> get zhai
"201001"
127.0.0.1:6379> get qian
"zhhh"

可用於解決分布式鎖的問題

(3)get:取值命令,值存在的話返回值,不存在的話返回null

127.0.0.1:6379> get zhai
"201001"
127.0.0.1:6379> get 123
(nil)

(4)getrange:取一個字符串的子字符串,下標從零開始,兩個參數是偏移量

127.0.0.1:6379> get zhai
"201001"
127.0.0.1:6379> getrange zhai 1 4
"0100"

(5)getset:設置key的值並返回key的原來的值

127.0.0.1:6379> get zhai
"201001"
127.0.0.1:6379> getset zhai 123321
"201001"
127.0.0.1:6379> get zhai
"123321"

(6)strlen:獲取長度

127.0.0.1:6379> get zhai
"123321"
127.0.0.1:6379> strlen zhai
(integer) 6

(7)del:刪除

127.0.0.1:6379> keys *
1) "zhang"
2) "qian"
3) "zhao"
4) "ZHAI"
5) "huangzzz"
6) "zhai"
127.0.0.1:6379> del huangzzz
(integer) 1
127.0.0.1:6379> keys *
1) "zhang"
2) "qian"
3) "zhao"
4) "ZHAI"
5) "zhai"

(8)批量讀寫

批量寫:

127.0.0.1:6379> keys *
1) "zhang"
2) "qian"
3) "zhao"
4) "ZHAI"
5) "zhai"
127.0.0.1:6379> mset user1 zhai user2 zhang
OK
127.0.0.1:6379> keys *
1) "zhang"
2) "qian"
3) "user1"
4) "user2"
5) "zhao"
6) "ZHAI"
7) "zhai"

批量讀:

127.0.0.1:6379> mget zhang qian user1
1) "202002"
2) "zhhh"
3) "zhai"

(9)++操作:

 (10)--操作:

 (11)設定增量值

加:

127.0.0.1:6379> set num 12
OK
127.0.0.1:6379> get num 
"12"
127.0.0.1:6379> incrby num 10
(integer) 22
127.0.0.1:6379> incrby num 10
(integer) 32
127.0.0.1:6379> incrby num 10
(integer) 42

減:

127.0.0.1:6379> get num
"42"
127.0.0.1:6379> decryby 10
(integer) 32
127.0.0.1:6379>  decrby num 10
(integer) 22
127.0.0.1:6379>  decrby num 10
(integer) 12
127.0.0.1:6379>  decrby num 10
(integer) 2

 (12)拼接字符串:

127.0.0.1:6379> get zhai
"123321"
127.0.0.1:6379> append zhai nihao
(integer) 11
127.0.0.1:6379> get zhai
"123321nihao"

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM