redis基本数据类型总结

redis通信基本了解

Redis 客户端与服务端之间的通信协议是在 TCP 协议上构建的。Redis 定义了 RESP(Redis Serialization Protocol,Redis 序列化协议)实现客户端与服务端的通信,协议本身很简洁。

请求格式

格式:
*<参数数量>CRLF
$<参数1的字节数>CRLF
<参数1>CRLF
...
$<参数N的字节数>CRLF
<参数N>CRLF

示例: set hello world
*3\r\n
$3\r\n
SET\r\n
$5\r\n
hello\r\n
$5\r\n
world\r\n
===================
返回结果样式
状态回复:第一个字节为“+”。
错误回复:第一个字节为“-”。
整数回复:第一个字节为“:”。
字符串回复:第一个字节为“$”。
多条字符串回复:第一个字节为“*”。

例如:
# nc 127.0.0.1 6379
set hello world
+OK

sethx hello world
-ERR unknown command 'sethx'

incr counter
:1

get hello world
$5
hello

keys hel*
*1
$5
hello

 

string

  • 增加:set key value ;mset;setex key seconds value
  • 向某个键追加值:append key val
  • 查询:get key;mget

字符串类型是 Redis 中最为基础的数据存储类型,它在 Redis 中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等。在Redis中字符串类型的Value最多可以容纳的数据长度是512M。https://blog.csdn.net/weixin_38399962/article/details/79408597

键命令(所有键都为字符串类型)

  • keys  正则:获取符合正则的键的值
  • exist:是否存在
  • type:值类型
  • del:删除
  • expire:设置过期时间
  • ttl:查看有效时间

hash

  • 增加修改:hset key field val,hmset
  • 获取:hkeys key:获取hash对象的所有属性,hget/hmget key field:获取某个属性值,hvals key:获取某个键所有属性值,hgetall key:获取所有键值对
  • 删除:hdel key field

list

  • 增加:lpush,rpush val1 val2;linsert key before或after 现有元素 新元素
  • 获取:lrange key start stop(获取值和列表一样);lindex;lpop(列表左边弹出一个值,并返回
  • 设置:lset key index val
  • 删除:lrem key count val (将列表中前count次出现的值为value的元素移除,count>0:从左往右;count<0从右往左;count=0:移除所有) 

set

  • 增加:sadd key member1 member2
  • 获取所有key: smember key
  • 检查给定元素是否在集合中:sismember member
  • 删除:srem key member

zset

  • 增加:zadd key score1 member1 score2 member2 ...
  • 下标获取:zrange key start stop(下标)
  • 权值获取:zrangebyscore key min max(权值)
  • 获取某个元素的权值:zscore key member
  • 删除指定元素:zrem key member1 member2 ...
  • 删除权重在指定范围的元素:zremrangebyscore key min max

 

posted @ 2020-03-26 22:47  鱼虫光  阅读(207)  评论(0编辑  收藏  举报