redis的命令大全网站:http://redisdoc.com/
一、redis五大数据类型
1、String(字符串)、Hash(哈希,类似Java里的Map)、List(列表)、Set(集合)和Zset(sorted set,有序集合)
2、命令(命令不区分大小写):
(1)set/get/del 常规命令
(2)append k1 12345 把原值vv1和12345拼接成一个字符串:vv112345
(3)strlen k1 得到k1值的长度
(4)INCR/DECR k2 如果k2的值为数字,那么执行一次INCR命令会加1,执行一次DECR命令会减1。
(5)INCRBY/DECRBY k2 3 如果k2的值为数字,那么执行一次INCRBY命令会加3,执行一次DECRBY命令会减3。
(6)getrange k1 0 3 取k1的字符串值的前4个字符 ,所以 get k1 相当于 getrange k1 0 -1。
(7)setrange k1 0 xxx 把k1的值的前3个值(和xxx的长度相同)替换为xxx。
(8)setex k2 5 vv2 把k2的存活时间设置为5秒。
(9)setnx k4 xxx 如果k4这个键值对已经存在了,那么不起作用,如果不存在,才创建,值为xxx。
(10)mset/mget k1 v1 k2 v2 k3 v3 mset同时创建三个键值对;mget同时得到k1、k2、k3的值。
(11)msetnx k4 v4 k5 v5 如果这两个键都不存在,才可以创建成功,否则只要有一个存在,那么都不能创建成功。
二、List(列表)
1、lpush/rpush list01 1 2 3 4 5 创建列表,lpush是值的顺序与创建时相反,rpush是值的顺序为创建和显示一致。
2、lrange list01 0 3 取列表的前4个值,lrange list01 0 -1则表示取出全部。
3、lpop和rpop lpop返回序号为1的元素,rpop返回序号最大的元素,并且移除这个元素。
4、lindex list01 3 返回序号为3(从0开始记数)的元素的值。
5、llen list01 返回列表list01中元素的个数
6、lrem list03 2 3 从list03中删除2个值为3的元素。
7、ltrim list01 0 3 复制list01中的前4个元素,并赋值给list01
8、lset list01 1 3 把数字3插入并替换list01的第2个元素
9、linsert list01 before/after 6 10 在
三、String(字符串)
String是redis最基本的类型,可以理解为与Memcahed一模一样的类型,一个key对应一个value。
String类型是二进制安全的,意思是redis的string可以包含任何数据,比如jpg图片或者序列化的对象。
String类型是redis最基本的数据类型,一个redis中字符串的value最多可以是512M。
四、Hash(哈希)
redis hash 是一个键值对集合,redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。类似与java里面的Map<String, Object>。
五、Set(集合)和Zset(有序集合)
redis的Set是String类型的无序集合,是通过HashTable实现的。
Zset是有序集合,和set的区别在于每个元素都会关联一个double类型的分数,通过分数为集合中的成员从小到大进行排序。Zset的成员是唯一的,但分数可以重复。
六、redis键(key)命令
1、keys * 该数据库中存在的所有key
2、exists k1 判断某个key(比如k1)是否存在
3、move k3 2 把k3的键值对移动到3号数据库中
4、expire k1 5 为给定的key设置过期时间,比如k1只存活5秒
5、ttl k2 查看该key还有多少秒过期,返回-1表示永不过期,返回-2表示已过期
6、type key 查看key是什么类型的
7、key已经存在value的情况下,set key 新value:set k1 vv1 新的value会覆盖旧的value