Redis学习(2)-数据类型String和Hashes

Redis的数据类型


(1)Strings类型及操作
String是最简单的类型,一个Key对应一个Value,string类型是二进制安全的,Redis的string可以包含任何数据,比如jpg图片或者序列化的对象


1.Set
  设置key对应的值为string类型的value
  例如:我们添加一个name=hello的键值对
  命令:set name hello
2.Get
  获取key对应value的值
  命令:get name
3.Setnx
  设置key对应的值为string类型的value,如果key
  已经存在,返回0,nx是not exist的意思
  命令:setnx name hello
  拓展Getnx
4.Setex
  设置key对应的值为string类型的value,并指定此键值对应的有效期
  命令:setex haircolor 10 red
  10为10秒
5.Setrange
  设置指定key的value值的字符串
  例如:我们希望lijie的126邮箱替换为gmail邮箱
  set name lijie@126.com
  命令:setrange name 6 gmail.com
6.mset
  一次设置多个key的值,成功返回ok表示所有的值都设置了,失败返回0表示没有任何值被设置
7.msetnx
  一次设置多个key值,成功返回ok表示所有的值都设置了失败返回0表示没有任何值被设置,但是不会覆盖已经存在的key
8.getset
  设置key的值,并返回key的旧值
9.getrange
  获取key的value值的子字符串
10mget
  一次获取多个key的值,如果对应key不存在,则对应返回nil
11.incr
  对key的值做加操作,并返回新的值
12.incrby
  同incr类似,加指定值,key不存在时候会设置key并认为原来的value是0
13.append
  给指定key的字符串追加value,返回新字符串值的长度

--------------------------------------------------------华丽的分割线--------------------------------------------------
(2)hashes类型及操作
Redis hash是一个string类型的field和value的映射表,它的添加、删除操作都是O(1)(平均)hash特别适合用于存储对象,相较于将对象的每个字段存成单个string类型,将一个对象存储在hash类型中会占用更少的内存,并且可以更方便的存取整个对象
1.hset
  设置hash field为指定值,如果key不存在,则先创建
  hset  user:001 name miao
2.hsetnx
  设置hash field为指定值,如果key不存在,则先创建,
  如果存在返回0
3.hmset
  命令:hmset user:002 name miao sex 1
4.hget
  命令:hget user:002 name
5.hincrby
  命令:hincrby user:name age 6
6.hexists
  测试指定field是否存在
7.hlen
  返回hash中的field数量
8.hdel
  删除hash中的field
  hdel user:002 age
9.hkeys
  命令:hkeys user:002
10.hvals
  命令:hvals user:002
11.hgetall
  命令:获取某个hash的全部field及value

注:Redis系列博客均是结合兄弟连Redis学习视频的笔记!

原文地址:https://www.cnblogs.com/sxmcACM/p/4728247.html