天天看点

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  //移除一个元素