天天看點

redis常用指令

有用的參考:(8條消息) 第 5 章 Redis_Oneby的部落格-CSDN部落格

1.清空資料庫 :flushall

2.設定值 /取值

     set name  tom

     get name  

3.檢視所有key值

  keys  *

4.存在某key值

exists keyname  //存在傳回1,不存在傳回0

5.移除key值

move keyvalue db  // move name 1

6.設定過期時間

  set address shanghai EX 10 //過期時間為10秒

  setex address 30  China   //設定位址為China,過期時間30秒

或用下面兩條指令

 set address shanghai 

EXPIRE address 10

檢視還有多少秒過期

TTL key_value

7.在已有的key值的value增加值,若沒有,相當于set key自動建立key值

append  key_name

8.檢視字元串長度

strlen key_name

9.自增 

incr  age         自增1

incrby age 10  自增10

10.截取字元串範圍

getrange  key_name 0 8  //截取字元串0 到8之間的值

getrange key_name 0 -1,截取全部

11.替換摸個區間的字元串

setrnge address 2 tom, //從字元串下表2處替換為tom

12.key不存在才設定,否則設定失敗

setnx job policeman  //若job存在,傳回0,設定失敗。job不存在,傳回1,設定成功

13.批量設定和擷取

mset k1 v1 k2 v2

mget k1 v1 k2 v2

msetnx  k1 v1 k2 v2 //當不存在時才設定成功

14.擷取值并指派

getset db redis   //設定db為redis,傳回nil

getset db sqlserver  //設定db為sqlserver,傳回修改前的值redis

二。 List

1. LPUSH list one  //插入一條資料

2.LRANGE  list 0 2 //擷取list的資料範圍,取全部的話, 0 -1

3.Lpop list  //把左邊第一個數字從list中剔除并傳回

4.Rpop lis //

5.Lindex list index  //擷取list下表為index的值

6.Llen list //擷取list的長度

7.Lrem移除元素 lrem list count value

  • count > 0: 從頭往尾移除值為 value 的元素。
  • count < 0: 從尾往頭移除值為 value 的元素。
  • count = 0: 移除所有值為 value 的元素。

8.Lset list index value //設定下表為index的值

9.Ltrim list  start end  //截取list中的一段的值

10.rpoplpush list addressList //從list右側取出一個值放在addressList左側

11.Linsert list BEFORE "banana" "fruit" //在list清單中,把“fruit”插入到“banana”前面

三.Set  沒有重複的内容。

1.sadd myset "hello" //在set中添加一個“hello”

2.SISMEMBER myset hello //判斷set中是否有 hello

3.SMEMBERS myset   //傳回set中所有内容

4. scard myset  //傳回set中的個數

5.srem myset hello  //從set中移除hello

6.srandmember myset  n //從set中随機抽n個數   應用場景,随機抽獎

7.spop myset  //随機剔除一個元素

8. smove myset1 myset2 milk //把milk從myset1中移動到myset2

9 sdiff myset1 myset2 //myset1減去myset2的元素,即myset1和myset2的差集

  sunion myset myset2 //連個set的并集

  sinter myset myset2 //交集    應用場景,哔哩哔哩共同好友

10. del myset 删除set

 四:hash

1.hset myhash CEO tom  //設定myhash的值

   hget myhash CEO  //擷取myhash的值

2.hmset myhash CTO jsck Engineer Lily  //設定多個值

   hmget myhash CEO CTO Engineer  //擷取多個值 

   hgetall myhash //擷取所有hash的值

3. hlen myhash //hash的個數

4. hexists myhash CEO  //判斷hash中某個值是否存在

5. hkeys myhash //擷取所有hash的key值

    hvals myhash //擷取所有hash的vals的值

6.hincrby myhash age 1 //age自增1

7. hset user:1 name tom

    hset user:2 name jack

五。zset

1.添加zset

           zadd salary 5 tom 

           zadd salary 8 jack

2.zrangbyscore salary -1 100 (withscores 帶上分數傳回) //去從-1到100中間的值進行排序

  zrevrangebyscore salary 100 0  降序,注意,第一個參數100一定要大約第二個參數0,否則報empty list

3.zrange salary 0 3  //取出下表從0到3的數

zrevrange salary 0 -1 //取出值并倒叙排列

4.zcard salsry //傳回zset成員個數

5.zrem salary tom  //移除一個元素