Redis的常用命令

一、String(全部为字符串类型)

        SET a1 1(设置a1的值为1)

        GET a1(拿到a1的值)

        DECRBY a1 2(将a1的值累减2)

        INCRBY a1 2(将a1的值累加2)

        MSET a1 1  a2 a a3 3 a4 4 (设置多个值)

        MGET a1 a2 (拿到多个值)

        SETEX  b 10(设置TTL为10秒过期)   123  (b的值为123)

        SETNX a 111 (设置key不存在的值 如果存在这不进行任何操作返回值为0)

二、Key

        Del a(删除一个key)、

        EXISTS a1 (判断a1是否存在 存在返回1 不存在返回0)

        KEYS *1(匹配最后一个字符为1的key)(*代表全部)

        KEYS ?1(?表示单个字符)

        EXPIRE aa 60(表示将aa的过期时间设置为60秒)

        PERSIST aa (表示移除aa的过期时间(TTL)设置为永不过期)

        TTL aa (查看aa的剩余过期时间)        

        SCAN 0 MATCH aa* COUNT 10(表示查找以aa开头的所有key 返回10个值 会在上下浮动)

三、Hash(哈希表)

        HSET student.001 name 张三 age 18(设置student.001的名字为张三,年龄18)

        HGET student.001 name(获得student.001的名字 返回值为:张三)

        HDEL student.001 name (删除student.001的名字 成功返回1 失败返回0)

        HEXISTS student.001 age(判断student.001是否存在age这个字段存在返回1不存在返回0)

        HGETALL student.001(返回student.001所有的字段和value)

        HINCRBY student.001 age x(对student.001的age这个字段增加x)

        HKEYS student.001(返回student.001的所有字段)

        HMSET student.002 name 李四 age 19 sex 男

        HMGET student.002 age name

        HVALS student.002(查找student.002所有的value)

四、List(列表)

        LPUSH class.110 a b c d e f g  (从左往右推  排序为g f e d c b a)

        RPUSH class.110 1 2 3(从右往左推  排序为 g f e d c b a 1 2 3)

        LINDEX class.110 6 (根据索引查找索引为6的值 结果为a)

        LPOP class.110(从左往右将第一个key推出去 结果为g)(剩余排序f e d c b a 1 2 3)

        RPOP class.110(从右往左将第一个key推出去 结果为3)(剩余排序f e d c b a 1 2)

        LSET class.110 -1 1(将索引为-1得值设置为1)(-1为最后一个元素 -2为倒数第二个元素)(排序为f e d c b a 1 1)

        BRPOP key [key ...] timeout (命令阻塞)

  key [key ...]:一个或多个Redis列表的键名,BRPOP会按照提供的顺序检查这些列表。

  timeout:阻塞的超时时间(以秒为单位)。如果设置为0,则命令将无限期地阻塞,直到有元素可以被弹出。

五、Set(不可重复)

        SADD class.120 1 2 3  9 8 7 1 2 5 6 4 (排序为1 2 3 4 5 6 7 8 9 )

        SPOP 移除并返回集合中的一个随机的元素

        SRANDMEMBER(随机返回集合中的一个元素)        

        SREM(移除一个元素)

        SINTER 多个key(返回给定集合的交集)

        SINTERSTORE destination key(将交集的放到destination )

        SDIFF (返回给定集合的差集)

        SDIFFST0RE

        SUNION(返回给定集合的并集)

六、SortedSet

        ZADD 将一个或多个元素及Score值加入到有序集合中

        ZCARD (返回有序集key的基数)

        ZCOUNT key min max (返回有序集合,Score值在最大和最小之间的数量)

        ZINCRBY(为有序集合中Score值上加上增量)

        ZRANGE

        ZRANGEBYSCORE

        ZREVRANGE

        ZRANK

        ZREVRANK

        ZREM(移除)

七、BitMap(位图)

        它允许你处理大量的布尔值(即 true 或 false,1 或 0)数据,并且非常节省空间。BITMAP 非常适合用于统计、去重等场景,比如统计用户是否访问过某个页面、用户是否拥有某个特性等。

假设我们要统计一周内每天用户是否登录过(以 1 表示登录,0 表示未登录)。 

SETBIT user.login.week 0 1(表示周一登录)(返回值为未设置的值)

SETBIT user.login.week 1 1(表示周二登录)

SETBIT user.login.week 2 1

GETBIT user.login.week 0 (查询周一的时候用户是否登录 返回值为1)

GETBIT user.login.week 2(查询周一的时候用户是否登录 返回值为0)

BITCOUNT user.login.week(返回值为3 说明用户登录了三次)

BITOP operation destkey key [key ...]

作用:对两个或更多的 BITMAP 进行位操作,结果存储在 destkey 中。

operation 可以是 ANDORXOR, 或 NOT

destkey 是存储结果的位图名称。

key 是参与运算的位图名称,可以有一个或多个。

and与(全为1才是1 有一个为0是0)

or 或(有一个为1就为1 全部是0才是0)

not非(是0为1 是1为0)

xor异或(相同是0 不同是1)

八、EVAL

        

  • 6
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值