redis -数据类型

字符串类型

随着redis版本的更新,可能会支持更大的最大容量,超过512MB。

注意:键的命名要有唯一性和可读性。

redis -数据类型_第1张图片

散列类型

散列类型(hash)。散列类型适合存储对象。

HSET key(对象名)  field(属性变量) value(变量值);

HGET key filed;获取值;

批量插入  HMSET key field1 value1 field2 value2.....

批量查询  HMGET key field1 field2;

HGETALL key  查询key所有的属性值;

 

判断字段是否存在:HEXISTS key field;存在返回1,不存在返回0。

增加数字 :HINCRBY key field 值;

删除字段:HDEL key filed [field 。。。。];

HKEYS key; 获取key 的所有字段名;

HVALS key;获取key的所有值。

HLEN key;获取key的长度。

列表类型

列表类型是双向链表,可以在链表的左右两端加数据和删除数据。就如同栈一样。越往中间走,时间复杂度越大。

LPUSH在链表的左边添加值,RPUSH在链表的右边添加值。返回值是增加链表后链表的长度。

LPOP从链表左边弹出一个值,RPOP从链表右边弹出一个值。返回的值是弹出值。

LLEN key用于获取链表的长度(元素个数)。

LRNGE key start end;获取链表从[start , end]期间的元素。

LREM key count value;

redis -数据类型_第2张图片

列表如何通过索引或者说下标来操作呢?

LINDEX key index;表示获取key的第index元素;

LSET key index value;表示设置key的第index元素为value;

LTRIM key start end;删除[start ,end]之外的所有元素;

集合类型

SADD是向集合中添加元素,SREM是删除元素。返回(真实的)添加成功或者删除成功的元素个数。

SMEMBERS key;获取集合中所有的元素。

SISMEMBER key member;判断member是否在集合key中,存在返回1,否则返回0.

集合之间的运算。

SDIFF key1 key2;可以是多个key,表示key1-key2的运算结果(数学的集合运算一样)。

SINTER key1 key2;可以是多个key,表示集合的交集;

SUNION key1 key2;可以是多个key,表示并集。

有序集合类型

增加元素。返回成功添加的元素个数(不含已经存在的)

获取元素的分数。

获取[start, stop]顺序区间的元素,0代表第一个元素,-1代表最后一个元素。如果ZRANGE结果按照元素升序排列。ZREVRANGE结果按照元素降序排列。

 

获取指定分数区间[min, max]的元素。+inf 和 -inf表示正无穷和负无穷。limit offset count 指的是从第offset元素开始的count个元素内,ZRANGEBYSCORE key (80  100;表示(80,100]范围的元素。

增加某个元素的分数。

 

 

 

你可能感兴趣的:(redis)