Redis 有 string、list、set、zset、hash數據類型。string類型是最基礎的,其他類型都是在string類型上去建立的,所以瞭解熟悉string類型的常用操作對於學習redis非常必要。 APPEND:向鍵的值後面追加字元串,並且返回追加後的值長度 SETBIT:設置或清除 ...
Redis 有 string、list、set、zset、hash數據類型。string類型是最基礎的,其他類型都是在string類型上去建立的,所以瞭解熟悉string類型的常用操作對於學習redis非常必要。
APPEND:向鍵的值後面追加字元串,並且返回追加後的值長度
127.0.0.1:6379[7]> get hello "world" 127.0.0.1:6379[7]> APPEND hello wonderful (integer) 14 127.0.0.1:6379[7]> get hello "worldwonderful"
SETBIT:設置或清除指定偏移位的值(比特位從左往右算)
GETBIT:獲取指定位的比特值
BITCOUNT:獲取指定位元組範圍中有多少位為 1
127.0.0.1:6379[7]> set andy 'a' OK 127.0.0.1:6379[7]> get andy "a" 127.0.0.1:6379[7]> SETBIT andy 6 1 (integer) 0 127.0.0.1:6379[7]> SETBIT andy 7 0 (integer) 1 127.0.0.1:6379[7]> GET andy "b" 127.0.0.1:6379[7]> GETBIT andy 7 (integer) 0 127.0.0.1:6379[7]> BITCOUNT andy 0 3 (integer) 3
INCR:值遞增
INCRBY:按照指定值遞增
INCRBYFLOAT:指定浮點數遞增
DECR:值遞減
DECRBY:按照指定值遞減
127.0.0.1:6379[7]> INCRBY counter 3 (integer) 9 127.0.0.1:6379[7]> DECRBY counter 2 (integer) 7 127.0.0.1:6379[7]> INCRBYFLOAT counter 1.6 "8.6"
# 如果值為非int型則會報錯
127.0.0.1:6379[7]> INCR key3
(error) ERR value is not an integer or out of range
GET:返回鍵的值
GETRANGE:獲取值指定範圍
GETSET:設置值並且返回原來的值
127.0.0.1:6379[7]> GETSET key3 test_key3 "value3" 127.0.0.1:6379[7]> get key3 "test_key3"
127.0.0.1:6379[7]> GETRANGE key3 0 3
"test"
MGET:批量獲取值,如果對應鍵不存在會使用 nil 代替,按指定順序返回
MSET:批量設置鍵值對,相比 SET 節省了網路時間,但如果一次性設置太多可能會導致阻塞
127.0.0.1:6379[7]> MSET a 1 b 2 c 3 d 4 OK 127.0.0.1:6379[7]> MGET a b c d 1) "1" 2) "2" 3) "3" 4) "4"
SET:設置鍵值對
語法:set key value [expiration EX seconds|PX milliseconds] [NX|XX]
expiration:設置過期時間,EX 以秒為單位, PX 以毫秒為單位
NX:鍵必須不存在才能設置成功
XX:鍵必須存在才能設置成功
SETNX:同等於 SET 指定 NX 參數
127.0.0.1:6379[7]> get test1 (nil) 127.0.0.1:6379[7]> GET redis "best" 127.0.0.1:6379[7]> SETNX redis "good" (integer) 0 127.0.0.1:6379[7]> SETNX test1 "good" (integer) 1
SETEX:設置鍵值對,並且指定過期時間,同等於 SET 指定 EX 參數。
127.0.0.1:6379[7]> SETEX test1 10 "test1" OK 127.0.0.1:6379[7]> get test1 "test1" 127.0.0.1:6379[7]> get test1 (nil)
MSETNX:等同於 MSET 和 SETNX 結合
PSETEX:等同於 SET 設置 PX 參數
SETRANGE:修改值指定範圍的內容
127.0.0.1:6379[7]> set redis pest OK 127.0.0.1:6379[7]> SETRANGE redis 0 b (integer) 4 127.0.0.1:6379[7]> get redis "best"
STRLEN:返回值的長度,以位元組為單位,註意每個中文字元占3個位元組
參考文檔:《Redis開發與運維》、Redis官方文檔
參考網路文件:理解setbit中的bit;https://www.zhihu.com/question/27672245
理解SETBIT、BITCOUNT等命令推薦博客:https://blog.csdn.net/u011489043/article/details/78990162