ITPub博客

首页 > 数据库 > 数据库开发技术 > Redis数据类型--redis系列1

Redis数据类型--redis系列1

原创 数据库开发技术 作者:DBA札记 时间:2021-07-15 00:23:58 0 删除 编辑

      


一、redis有五种数据类型 字符串 哈希 列表 集合 有序集合


二、字符串的操作

      字符串最大可存储512M数据,保存普通文字和二进制文件。

基本命令 

SET email Scott@163.com    GET  emailDEL  email

截取命令  

GETRANGE 截取字符串的内容

GETRANGE email  0  3

STRLEN 获得字符串长度

STRLEN email

SETEX  设置带有过期时间(秒)的KEY-VALUE

SETEX  city 5 Bejing

MSET 设置多个KEY-VALUE

              MSET username scott sex  male

MGET 获得多个VALUE 

MGET username sex

APPEND 字符串追加内容

APPEND temp  1234INCR 数字自增加1

INCR num 数字加上指定的整数值

INCRBY  num 25INCRBYFLOAT num 3.5

数字自增减1

DECR num

数字减去指定的整数值

DECRBY  num 10


 三、哈希操作  key-----value(姓名 年龄  性别  电话)

  HSET 设置哈希表字段

HSET 8000 ename   TomHSET  8000 job SALESMAN

HMSET 设置多个哈希字段

HMSET  8000  ename  Tom  job  SALESMAN  deptno  10

HGET 获得哈希表字段值

HGET  8000 ename

HMGET 获得多个哈希表字段值

HMGET 8000 ename job deptno

HGETALL  获得所有哈希表字段值

HGETALL  8000

HKEYS  获得哈希表的所有字段名

HKEYS 8000

HLEN  哈希表中的字段数量

HLEN 8000

HEXISTS 判断哈希表是否存在某个字段

HEXISTS  8000 job

HVALS 获得哈希表所有的字段值

HVALS  8000

HDEL 删除哈希表的字段

HDEL 8000 job deptno

HINCRBY 让哈希表的字段值加上指定的整数

HINCRBY  8000 deptno 10

HINCRBTFLOAT 让哈希表的某个字段加上指定的浮点数

HINCRBYFLOAT 8000 sal 350.5


四、列表类型  

RPUSH dname 技术部 后勤部  售后部

              LPUSH dname 秘书部              LSET  dname 2  销售部                LRANGE  dname 0 -1

LLEN 获得列表长度

LLEN dname

LINDEX 获得列表某个元素

LINSERT   dname BEFORE 秘书处 董事会

LPOP  删除列表最左边的元素

LPOP dname

RPOP  删除最右边的元素

RPOP  dname

LREM  删除列表某个元素

LREM employee 1 scott


五 、集合操作

SADD 添加集合    

SADD empno 8000SADD empno 8002 8003 8004 SMEMBERS empno

SCARD 获得集合长度

SCARD empno

SISMEMBER  判断是否含有某个元素            

SISMEMBER  empno  8000SREM empno 8000 8001

SPOP  随机删除并返回集合的某个元素 

SPOP empno

SRANDMEMBER  随机返回集合中的元素

SRANDMEMBER empno 5


六、有序集合 

有序集合是带有排序功能的集合,redis会按照元素分数值排序

ZADD添加有序集合

ZADD keyword 0 "鹿晗" 0 "张朝阳" 0 "马云"ZINCR keyword 1 "鹿晗"ZINCRBY keyword 5 "马云"ZINCRBY keyword 2 "张朝阳"ZREVRANGE keyword 0 -1

ZCARD 获得有序集合的长度

ZCARD keyword

ZCOUNT 查询某个分数值区间内元素的数量

ZCOUNT keyword 5  10

ZSCORE 返回元素的分数值

ZSCORE keyword "马云"

ZRANGE 获得有序集合的内容(升序)

ZRANGE keyword 0  -1

 ZREVRANGE 获得有序集合的内容(降序)

ZREVRANGE keyword 0 -1

ZRANGBYSCORE 获得分数值区间内的集合内容(升序)

ZRANGEBYSCORE keyword 5 10ZRANGEBYSCORE keyword 5 (10ZRANGEBYSCORE keyword 5   +inf

ZREVRANGEBYSCORE 获得分数值区间内的集合内容(降序)

ZREVRANGEBYSCORE keyword 10 5

ZRANK 获得元素的升序排名 (从0开始)

ZRANK keyword "马云"

ZREVRANK 获得元素的降序排名(从0开始)

ZREVRANK keyword "马云"

ZREM 删除有序集合中的元素

ZREM keyword "马云" "张朝阳"

ZREMRANGEBYRANK 删除排名区间内的元素

ZREMRANGEBYRANK keyword 0 2

ZREMRANGEBYSCORE 删除分数值区间内的元素

ZREMRANGEBYSCORE keyword -inf (5000


七、Key命令

         

 DEL 删除记录

 DEL  keyword

EXISTS 判断是否存在某个key

EXISTS employee

EXPIRE 设置记录过期时间

EXPIRE employee 5

EXPIREAT  设置记录的过期时间(UNIX时间戳)

EXPIREAT  employee 1544803200

MOVE 把记录迁移到其他逻辑库

MOVE keyword 1

修改Key 名称

RENAME employee tmp

 PERSIST 移除过期时间

PERSIST keyword

判断VALUE数据类型

TYPE keyword



历史文章:

MySQL参数的"双1"设置

你还在批量拼sql?一条命令搞定

Docker基本介绍和常用操作命令--docker上篇

MySQL 主从管理

MySQL DBA必备工具Percona Toolkit--上篇

     



原文作者:DBA札记;如有侵权,请联系管理员删除。

下一篇: 升维思维--杂谈
请登录后发表评论 登录
全部评论

注册时间:2020-01-18

  • 博文量
    90
  • 访问量
    40041