redis—非關係型資料庫

自由的心|勇敢的心發表於2024-10-06

關係型資料庫 表和表 資料和資料之間 需要保護
非關聯式資料庫 redis 約束 不需要保護

驗證碼 時效性 不需要永久存在
str ,list,set,zset,hash

#登入

存在16個資料庫  0-15進行表示  直接使用資料庫
 預設進入的是0號資料庫
redis-cli -h 127.0.0.1 -p 6379 (遠端登入)

本地登入
redis-cli

退出 SHUTDOWN

切換選擇資料

SELECT 1

字串資料

新增單條資料

set key  value
mset key value  key value
set name 李四      # 新增
set name zhangsan  # 修改
mset name wangwu  age 21  # 新增多條資料 

檢視鍵值對
get name
檢視所有的鍵值對
keys *
刪除鍵值對
del name

新增多條
mset name1 zhangsan name2 lisi name3 wangwu

修改多條
mset name1 zhangsan1 name2 lisi2 name3 wangwu3

查詢多條資料
mget name1 name2 name3

刪除多條
del name1 name2 name3

判斷鍵值對是否存在 存在返回1 反之0
exists name1

重新命名

rname age  age1
set age 18

設定時效性鍵值對

set key value ex 時間
set name1 zhangsan ex  30

檢視時效性 -1 永久存在 -2 不存在 其他數值 就是存活週期
ttl name1

設定時效性鍵值對
set name1 zhangsan ex 6000
設定成永久存在
persist name1

設定成臨時的鍵值對
expire name1 6000

清空整個資料庫
FLUSHALL

列表資料

lpush rpush

先進後出 棧

lpush li a b c d e f

5 4 3 2 1 0

先進先出 佇列

lpush li2 a b c d e f

0 1 2 3 4 5

獲取列表元素

lrange li 0 -1

獲取列表長度

llen li

修改元素

lset li 0 ff

刪除元素

lpop 從上往下 從左刪除
rpop 從下往上 從右刪除

lpop li2

根據下標獲取元素

lindex li 1

lpush li3 a b c d e a a d c b a

指定刪除 2 個 a 元素 正數 從上往下刪除 負數 反之

lrem li3 2 a

b c d e a d c b a

lrem li3 -1 b

b c d e a d c a

雜湊型別

新增

hset dic name zhangsan age 19 sex nan

檢視

獲取所有的欄位

hkeys dic

獲取所有的值

hvals dic

獲取所有的鍵值對

hgetall dic

指定獲取欄位值

hget dic name
hmget dic name age

修改

hset dic name zhangsan1

刪除

hdel dic name

獲取長度

hlen dic

集合

集合內的元素具有唯一性和無序性

sadd se1 1 2 3 4 5 6 7 8 9
sadd se2 4 5 6 7 8 9 10 11 12
sadd se3 4 5 6 7 8 9 10 11 12 12

查詢

smembers se1

隨機刪除 2是個數

spop se1 2

指定刪除 吧1 刪除

srem se1 1

交集

sinter se1 se2 只檢視交接
sinterstore se4 se1 se2 吧交集儲存進入se4

並集

sunion se1 se2
sunionstore se5 se1 se2 吧並集儲存進入se5

差集

sdiff se2 se1
sdiffstore se6 se2 se1 吧差集儲存進入se6

統計集合元素個數

scard se6

隨機獲取集合內的元素 2 個數 正數可能存在重複元素 負數不會出現重複

srandmember se5 2
srandmember se5 -2

有序集合

分數

新增元素

zadd ze1 100 a 90 b 80 c 70 d 60 e 51 f
zadd ze2 20 a 30 b 40 c 70 g 60 t 51 u

檢視元素

zrange ze1 0 -1

帶上分數檢視元素

zrange ze1 0 -1 withscores

刪除元素

zrem ze1 b

交集 分數相加

zinterstore ze3 2 ze1 ze2

並集 存在相同的元素 分數相加

zunionstore ze4 2 ze1 ze2

補充

獲取指定分數範圍的元素 ( 不包含

zrangebyscore ze4 (60 (100 WITHSCORES
zrangebyscore ze4 60 100
zrangebyscore ze4 (60 100
zrangebyscore ze4 60 (100

獲取指定分數範圍的元素個數 返回個數

zcount ze4 70 120

按照分數範圍刪除元素

zremrangebyscore ze4 (60 (100

按照排名範圍刪除元素

zremrangebyrank ze4 0 2 # 0 2 下標 刪除123

相關文章