Redis資料型別 String

2021-10-06 10:19:56 字數 3847 閱讀 1231

redis學習準備篇

string

127.0

.0.1:6379

>

set key1 v1 --設定值

ok127.0

.0.1:6379

> get key1 --取值

"v1"

127.0

.0.1:6379

>

keys

*(error) err unknown command 'keys*'

127.0

.0.1:6379

>

keys

*--顯示所有key1)

"key1"

127.0

.0.1:6379

>

exists key1 --判斷存在key

(integer)1

127.0

.0.1:6379

--忘字串裡加值

(integer)5

127.0

.0.1:6379

> get key1

"v1ok0"

127.0

.0.1:6379

> strlen key1 --顯示key對應值的長度

(integer)5

127.0

.0.1:6379

>

setview0ok

127.0

.0.1:6379

> get view

"0"127.0

.0.1:6379

> incr view

--每次自增加一

(integer)1

127.0

.0.1:6379

> get view

"1"127.0

.0.1:6379

> decr view

--每次自減減一

(integer)0

127.0

.0.1:6379

> decr view

(integer)-

1127.0

.0.1:6379

> get view

"-1"

127.0

.0.1:6379

> incrby view

10--每次自增加10

(integer)9

127.0

.0.1:6379

> incrby view10(

integer)19

127.0

.0.1:6379

> get view

"19"

127.0

.0.1:6379

> decrby view

5--每次自減5

127.0

.0.1:6379

>

set key1 "hello,asd"

ok127.0

.0.1:6379

> get key1

"hello,asd"

127.0

.0.1:6379

> getrange key1 0

3--擷取字串(索引是從0開始的)

"hell"

127.0

.0.1:6379

> getrange key1 0-1

-- -1表示顯示所有字元

"hello,asd"

127.0

.0.1:6379

>

set key2 adcdefg

ok127.0

.0.1:6379

> get key2

"adcdefg"

127.0

.0.1:6379

> setrange key2 1 xx --替換指定位置開始的字串

(integer)7

127.0

.0.1:6379

> get key2

"axxdefg"

127.0

.0.1:6379

> setex key3 30

"hello"

--設定值的同時設定生效時間

ok127.0

.0.1:6379

> setex key3 40

"qweq"

ok127.0

.0.1:6379

> get key3

"qweq"

127.0

.0.1:6379

> ttl key3 --顯示剩餘時間

(integer)32

127.0

.0.1:6379

> setnx key4 60

--如果key存在建立失敗,如果key不存在則建立

(integer)1

127.0

.0.1:6379

> get key4

"60"

127.0

.0.1:6379

>

127.0

.0.1:6379

> dbsize --顯示當前資料容量

(integer)4

127.0

.0.1:6379

> flushdb --清空當前庫

ok127.0

.0.1:6379

> dbsize

(integer)0

127.0

.0.1:6379

> mset k1 v1 k2 v2 --同時設定多組key-value

ok127.0

.0.1:6379

> mget k1 k2 --同時取到多組key1)

"v1"2)

"v2"

127.0

.0.1:6379

> msetnx k3 v3 k1 v1 --msetnx是乙個原子性操作,要麼一起成功,要麼一起失敗

(integer)0

127.0

.0.1:6379

> msetnex k3 v3 k4 v4

(error) err unknown command 'msetnex'

127.0

.0.1:6379

> msetnx k3 v3 k4 v4

(integer)1

127.0

.0.1:6379

>

setuser:1 --以json的方式儲存物件

ok127.0

.0.1:6379

> get user

(nil)

127.0

.0.1:6379

> get user:1

""127.0

.0.1:6379

> mset user:2:name wangsi user:2:age 2

--另一種儲存物件方式user::

ok127.0

.0.1:6379

> mget user:2:name user:2:age1)

"wangsi"2)

"2"127.0

.0.1:6379

> getset v9 name --先get再set

(nil)

127.0

.0.1:6379

> get v9

"name"

127.0

.0.1:6379

>

string類似的使用場景:value除了是我們的字串還可以是我們的數字

redis資料型別(String)

常用string操作命令 set keyvalue 設定值 getkey 獲取值 value 追加值 incr key 原子操作,自動加1 value必須為inter型別的字元。decr key 原子操作,自動減1 value必須為inter型別的字元。incrby key num 自動增加指定值 ...

Redis資料型別 String

redis 的字串是動態字串,是可以修改的字串,採用預分配冗餘空間的方式來減少記憶體的頻繁分配。內部為當前字串實際分配的空間 capacity 一般要高於實際字串長度 len。增 set key value 查 get key 刪 del key 增 mset key1 value1 key2 va...

Redis資料型別 String

redis自身是乙個map,其中所有的資料都是通過key value 的形式進行儲存的 127.0.0.1 6379 set name lisi 新增 ok127.0.0.1 6379 get name 獲取 lisi integer 8 127.0.0.1 6379 get name lisiwo...