reids通用命令和类型
redis的数据类型key-value
redis不想数据库有table其中id不会混乱,但redis的key都存在一起,所以命名可以加上’ : ‘作为区分 例如,本人roydon有article和problem
代码语言:javascript复制roydon:article:id
roydon:problem:id
value若是Java对象,可序列化为json字符串后存储 例如,key为roydon:user:1对应value:
代码语言:javascript复制'{"id":1,"name":"roydon","age":20}'
命令添加
set (key) (value)
获取
get (key) (value)
通用命令
结合help (commend)查看具体用法
KEYS:查看符合模板的所有key,结合通配符,不建议生产使用 DEL:删除指定的key,也可以同时删除多个 EXISTS:判断key是否存在 EXPIRE:给key设置有效期,到期该key自动删除(integer) -2 TTL:查看一个key的剩余有效期
String类型的常用命令
string类型,其value有三种//////////////////////////////////////
- string
- int
- float
KEY | VALUE |
---|---|
msg | hello world |
num | 100 |
pai | 3.14 |
命令———help comment查看
1.SET 2.GET 3.MSET:批量添加 4.MGET:批量获取,后面添加多个key得到多的对应value 5.INCR:int的key自增1 6.INCRBY:指定增加或减少,key后指定数子,负数为减 7.INCRBYFLOAT:float自增,必须指定,指定值为float数 8.SETNX:添加string类型键值对,key若存在不执行。 同
set `key` `value` nx
9.SETEX:添加string类型键值对,并指定有效期
Hash类型
也叫散列,value是一个无序字典,类似于java中的HashMap结构 Hash将每个字段独立存储,可以针对单个字段做CRUD
可对单个field操作
List类型
类似Java中LinkedList,双向链表,反正向检索
Set类型
与Java中HashSet类似,可以看作一个value为null的HashMap
- 无序
- 元素不可重复
- 查找快
- 支持交集,并集,差集等功能
SortedSet类型
是一个开排序的set集合,类似Java中TreeSet,但底层数据结构差别很大。SortedSet中每个元素都带有一个score属性,可以基于score属性对元素排序
- 可排序
- 元素不重复
- 查询速度快 //////////////////适用场景:排行榜