一、全局命令
1.查看所有键:keys *
2.键总数:dbsize会回当前数据库的总数
3.检查键是否存在:exists key如果键存在返回1,不存在返回0;
4.删除键:del key del
del是一个通用命令,无论值是什么数据结构类型,del命令都可以将其删除。
5.键过期:expire key seconds
reids支持对键添加过期时间,当过期时间后,会自动删除键单位是“秒”
ttl命令会返回返回键的剩余过期时间。
大于等于0:键剩余的过期时间
-1:键没设置过期时间
-2:键不存在
命令为:ttl key
6.键的数据结构类型
type key 如果键不存在则返回none
type命令实际返回当前键的数据结构类型:它们分别是:string(字符串),hash(哈希) list(列表),set(集合),zset(有序集合)
二、数据结构
1.字符串(string)
字符串类型是redis最基础的数据结构,字符串类型的实际值可以是字符串(简单的字符串,复杂的字符串(json、xml),数字(整数,浮点数)甚至是二进制(图片、音频、视频)但是最大不能超过512M.
1.1常用命令
1)设置值:set key value[ex second][px second]
set命令有几个选项:
ex:seconds:为键设置秒级过期的时间。
px:millseconds:为键设置毫秒级过期时间。
nx:键必须不存在,才可以设置成功用于添加
xx:与nx相反,键必须存在,才可以设置成功,用于更新。
2)获取值:get key,如果键不存在会返回nil(空)
3)批量设置值:mset key value[key vaue ...]
4)批量获取值:mget key [key ...]
批量操作可以有效的提高开发效率,
如果n次get命令具体耗时如下:n次get时间=n次网络时间+n次命令时间;
如果是mget具体耗时如下:n次get时间=1次网络时间+n次命令时间
5)计数:incr key
incr命令用来对值做自增操作,返回结果有三种情况:
1.值不是整数,返回错误
2.值是整数,返回自增后的结果
3.键不存在 按照值为0自增,返回结果为1
除了incr自增,还有decr(自减)、incrby(自增指定数字),decby(自减指定数字)
incrbyfloat(自增浮点数)
2.哈希
哈希类型是指键值本身又是1个键值对结构
2.1命令
设置值:hset key field value
获取值:hget key field
删除field:hedl key field[field ...]
计算field的个数:hlen key
批量设置或获取field-value
批量设置:hset key field value[field value ...]
批量获取:hget key field value[field value ...]
判断field是否存在:hexists key field
获取所有field:hkeys key
获取所有value:hvals key
获取所有的field-value:hgetall key
下一篇会介绍集合和列表。
