重要站点

redisdoc.com
http://www.runoob.com/redis/redis-tutorial.html

1.基础知识

1.redis由16个库(编号0-15,默认使用第0个)
2.查看当前库的数量:dbsize
3.切换到5号库:select 5
4.查看所有的键值:keys *
5.清库(清所有):flushall 清当前库:flushdb
redis学习01--基础知识

2.key的用法

1.redis存储数据通过 set key value, 获取数据通过get key
2.用法
1.判断key(在此key名为k1)是存在:exists k1
2.移动k1到3号库:move k1 3
3.给指定key设置过期时间:expire k1 秒数
4.查看key剩余多少秒过期(返回-2表示过期,-1永远不过期,过期的会被删除,无法通过get获取):ttl k1
5.删除key:del k1
6.查看key的类型: type key
redis学习01--基础知识
redis学习01--基础知识

3.数据类型

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。

string(字符串)

1.给value追加一个字符串:append k1 字符串
2.获取value的长度:strlen key
3.对value进行加减1(只能对数字有效):incr/decr key
4.对value进行加减某个数(举例x):incrby/decrby key x
5.截取从x到y的值(按下标截取字符串):getrange key x y
6.一次设定多个键值:set k1 v1 k2 v2 k3 v3
7.一次获取多个key:mget k1 k2 k3
8.一次设定多个(多个key都不存在的时候):msetnx k1 v1 k2 v2
redis学习01--基础知识
redis学习01--基础知识
redis学习01--基础知识

list(常用)

1.放入lpush:lpush list01 0 1 2 3 4 5 取出结果为: 5 4 3 2 1 0
2.取命令lrange:lrange list01 0 -1
3.放入rpush:rpush list01 0 1 2 3 4 5 取出结果为:0 1 2 3 4 5(放入的顺序和取出来的顺序相同)
4.每次取出一个(栈顶的,并且取出来后原来的list就会减少):lpop list01 结果为:5
rpop每次取出来一个(栈底的)
5.lindex list01 x取出list01中下标为x的值
6.llen list01 获取list01的长度
7.lrem list01 x value 删除list01中x个值,比如:lrem list01 2 3 删除list01中的2个3
8.ltrim list01 x y 取出list01中下标从x到y的值,并重新赋值给list01
9.rpoplpush list01 list02 将list01中的栈底元素移动到list02的栈顶
10.lset list01 index value 将list01中下标为x的值替换成为value
11.linsert list01 before/after 值1 值2 在值2前插入值1

set(重要)

和list的区别是不会有重复的,如果插入存在重复之暴露之前的
1.sadd set01 1 2 3 4 5 结果为:1 2 3 4 5
2.smembers set01 取出
3.sismember set01 value 判断value是否是set01的成员
4.scard set01 获取集合中元素的个数
5.srem set01 value 删除集合set01的value元素,是返回1
6.srandmember set01 x 在set01中随机取出x个数(取出后原来的还存在)
7.spop list01 随机取出一个(原来的没了)
8.smove set1 set2 set1的value 将set1的value赋值给set2
9.差集:sdiff sdiff set1 set2 取set1和set2中的交集;同理,并集:sunlon;交集:sinter

hash(非常重要)

key value 模式不变,但是value是一个键值对
1.存:hset user id 66
2.取:hget user id 结果为66
3.设置多个:hmset user name xie id 1 age 25
4.获取多个:hmget user name id age 结果为:xie 1 25
5.全部取出:hgetall key 结果为: key value key value…
6.删除:hdel user name 删除user 中的name(注意del会把整个user删除)
7.获取长度:hlen user
8.hexists user id 判断user 的id是否存在
9.hkeys user 获取user 的所有key
10.hvals user 获取user 的所有值
11.hincrby/hincrbyfloat user age 2 将user 的age增加2 (float加小数)
12.hsetnx user name xie 不存在则加入
redis学习01--基础知识

zset

在set的基础上加一个score值,之前set k1 v1 v2 v3,现在zset k1 score v1 score v2
1.zadd zset01 60 v1 70 v2 80 v3 90 v4
2.zrange zset01 0 -1 结果为:v1 v2 v3 v4
3.zrange zset01 0 -1 withscores 结果为 v1 60 v2 70 v3 80 v4 90,值跟分数都取出
4.zrangebyscore zset01 开始score 结束score zrangebyscore zset01 70 80 结果为:v2 v3
5.zrangebyscore zset01 (70 80 结果为:v2 v3 结果为:v3 (表示不包含,大于70到小于等于80
6.zrangebyscore zset01 70 90 limit 2 3 对取出的结果,再从结果下标2开始取出3个
7.zrem zset01 v3 删除
8.zcrad/zcount 统计 zrank zscore
9.zrevrank key value 逆序获得下标值
10.zrevrang 逆序获得所有 v
11.zrevrangebyscore key 结束分数 开始分数

相关文章: