| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> redis五大基本数据类型详解 -> 正文阅读 |
|
[大数据]redis五大基本数据类型详解 |
redis 基本操作 在redis 中命令不区分大小写 set name myredis (创建key) get name(获取key值) keys * (查看所有键值对) shutdown(关闭redis) exit(退出redis) EXISTS keyname (判断key 是否存在) move keyname 1 移除当前key EXPIRE keyname number (设置key存在时间 单位是秒s) ttl keyname (查看当前key的剩余时间) type keyname (查看key的数据类型) string append 追加字符串,如果当前KEY? 不存在,就相当于set key strlen 获取字符串长度 Views 步长 Incr views 设置自增量 ?? decrby views 设置自减量 ?? ?? getrange keyname 0? x 截取字符串 ??默认下标为0 截取全部字符串时x=-1 ?? ?? setrange keyname x? aaa? 替换指定位置开始的字符串 ?? ?? setex 设置key 过期时间 ?? ?? setnx? 不存在设置 ? ?? ?? mset 可以设置到一个对象的多个key值 ?? mget可以获取到一个对象的多个key值 ?? ?? getset? db redis 先获取到key的值再重新设置key的值 ?如果值不存在返回nil 如果存在 就先返回当前值 ?? ? list list结构图 List的多有命令都是以L开头的 lpush list one? 将one 放入列表中,放入到表头部(左边) lrange list 0 -1 获取列表list 中所有的值 rpush list righr? 将值righr 放入到列表尾部(右) lpop 移除列表左边的第一个元素 rpop 移除列表右边的第一个元素 lindex list 0? 通过下标获取list中第一个值 llen list 返回列表长度 lrem 移除指定的值 用法 ?lrem? [指定list] [移除的个数] [具体的值] ltrim 通过下标截取指定长度的值 ?用法 ltrim [指定list] [范围] rpoplpush 移除指定列表右边第一个元素并将它写入到指定列表左边第一个 用法 ?rpoplpush [移除的指定列表] [写入的指定列表]? #如果写入的指定列表不存在,系统会自动创建一个列表 lset 将列表中指定下标的值替换为另一个值,相当于一个更新操作 #执行前需要先判断该列表或值存不存在 不存在则该操作无法执行 ?用法 lset [指定列表] [指定下标] [指定替换后的值] linsert 将某一个具体的值插入到列表中某一个值的前面或者后面 用法 ?linsert [指定列表] [选择插入到前面(before)或者后面(after)] [被插入的值] [插入值] set #set无序且不能重复 sadd? 向set中添加元素 ?用法 sadd? [set名] [元素] smembers 查看指定set的所有值 用法 smembers [指定的set] sismember 判断有一个元素在指定的set中是否存在 用法 sismember [指定的set] [要查看的元素] scard 获取set中的元素个数 ?用法 scard [set名] srem 移除指定set中指定的元素 用法 srem [指定的set] [指定的元素] srandmember 随机抽选出指定个数的元素 ?用法 srandmember [指定的set] [指定的个数,不是必选项,不给出指定个数时,默认个数为一] spop 随机移除指定set中的元素? 用法 spop [指定的set] smove 将一个set中的指定元素移动到另一个set中 用法 smove [指定元素所在的set] [移动的目标set] [指定的元素] 目标元素不存在时会自动创建一个set集合 sdiff 多个set之间的差集 ?用法 sdiff [set1] [set2] sinter 多个set之间的交集 用法同上 sunion 多个set之间的并集 用法同上 Hash 可以将Hash看成一个map集合 本质上和string类型没有太大区别 只是存的值是hash类型的 hset 创建hash类型的值 ?用法 hset [hash表名] [字段名(相当于key)] [值 (相当于vlaue)] ???????? hget 获取到某一个字段的hash值 用法 hget [指定的hash表名] [key] hmset 创建多个字段的hash值 用法参考Hset hmget 获取多个字段的hash值 用法参考 hget hgetall 获取指定hash表中所有的key-vlaue 用法 hgetall [hash表名] hdel 删除指定hash表的指定key ?vlaue值也随之删除了 用法 hdel [指定的hash表] [指定的key] hlen 获取hash表的字段数量 用法 HLEN [指定的hash表] hexists 判断hash中指定的字段(key)是否存在 用法 hexists [hash表名] [字段(key)] hkeys 获取指定hash表中所有的字段(key) 用法 hkeys [hash表名] hvals 获取指定hash表中所有value 用法同上 hincrby 指定增量或减量 用法 hincrby [hash表名] [字段名(key)] [增量或减量] hsetnx 判断hash表中指定字段是否存在 存在则不能设置值 如果不存在则可以设置值 用法 hsetnx [hash表] [指定字段] [值] Zset (有序集合) Redis 有序集合和集合一样也是 string 类型元素的集合,且不允许重复的成员。 不同的是每个元素都会关联一个 double 类型的分数。redis 正是通过分数来为集合中的成员进行从小到大的排序。 有序集合的成员是唯一的,但分数(score)却可以重复。 ?zadd 向集合中添加元素 用法 zadd [集合名] [number(分数)] [用户] ?zrangebyscore 显示全部用户 (以分数大小来进行递增排序)? 用法 zrangebyscore [指定集合] -inf +inf (-inf 负无穷 代表最小值 +inf 正无穷 代表最大值) ?+withscores 可排序且显示分数 ??-inf +指定分数 +withscore 则显示为 指定分数下的用户 指定范围 Zrevrange 递减排序 ?用法同上 zrem 移除集合中的指定元素 用法 zrem [集合] [指定元素] zcard 获取指定集合的元素个数 用法 zcard [集合名] zcount 获取指定区间的元素个数 用法 zcount [指定集合] [区间] #区间为闭区间 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 6:04:54- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |