简单操作

  1. DBSIZE 查看当前数据库的key数量
  2. keys * 查看key的内容
  3. FLUSHDB 清空当前数据库的key的数量
  4. FLUSHALL 清空所有库的key(慎用)
  5. exists key 判断key是否存在

redis常用五大数据类型

1.redis-string

string是redis最基本的类型,一个key对应一个value
string可以包含任何数据,最大不能超过512M
1.set/get/del/append/strlen

  1. set ---- 设置值
  2. get ---- 获取值
  3. mset ---- 设置多个值
  4. mget ---- 获取多个值
  5. append ---- 添加字段
  6. del ---- 删除
  7. strlen ---- 返回字符串长度

2.incr/decr/incrby/decrby

  1. incr ---- 增加
  2. decr ---- 减少
  3. incrby ----- 制定增加多少
  4. decrby ----- 制定减少多少

3.getrange/setrange

  1. getrange ---- 获取指定区间范围内的值,类似between....and的关系
  2. setrange ---- 代表从第几位开始替换,下脚本从零开始 0 -1表示全部

2.redis-list(单值多value)

List(列表)
列表是简单的字符串列表,按照插入顺序排序,可以添加一个元素列表的头部(左边)或者尾部(右边)
它的底层实际是个链表
1.lpush/rpush/lrange

  1. lpush/rpush/lrange ---- 从左/从右/获取指定长度
  2. lpush list01 1 2 3 4 5 倒序排列
  3. rpush list02 1 2 3 4 5 正序排列
  4. lrange list01 0 -1 获取list01 中的所有值

2.lpop/rpop

  1. lpop/rpop ---- 移除最左/最右
  2. lpop list01 删除元素5
  3. rpop list01 删除元素1

3.lindex,按照索引下标获得元素(从上到下)

  1. lrange list01 0 -1
  2. lindex list01 1

4.llen,求列表长度

  1. llen list01
  2. 5.lrem key
  3. Nvalue
  4. lrem list01 2 1 list01中删除21

6.ltrim key

  1. ltrim ---- 开始index结束index,截取指定范围的值后在赋值给key
  2. ltrim list01 0 2 截取list01 02的数据在赋值给list01

7.rpoplpush list1 list2 将list1中最后一个压入list2中第一位

  1. lrange list01 0 -1
  2. lrange list02 0 -1
  3. rpoplpush list1 list2

8.lset key index value

  1. lset list01 0 x list02中第一位换成x

9.linsert key before/after

  1. linsert list01b before x php x之前加字段php

3.redis-Hash

hash是一个键值对集合
hash是一个string类型的field和value的映射表,hash特别适合存储对象
1.hset/hget/hmset/hmget/hgetall/hdel

  1. 设值/取值/设值多个值/取多个值/取全部值/删除值 hset user id 11
  2. hget user id
  3. hmset customer id 11 name juran age 26
  4. hmget customer id name age 只返回相应的值
  5. hgetall customer 返回全部 hdel user id 删除id

2.hlen

  1. 求哈希长度
  2. hlen customer

3.hexists key

  1. hexists ---- key里面的某个值
  2. 存在返回1 ,不存在返回0

4.hkeys/hvals

  1. hkeys students
  2. hvals students

4.redis-set(不重复的)

Set(集合)
set是string类型的无序集合
1.sadd/smembers/sismember

  1. sadd/smembers/sismember ---- 添加/查看集合/查看是否存在
  2. sadd set01 1 2 2 3 3 去掉重复添加
  3. smembers set01 得到set01
  4. sismember set01 1 如果存在返回1 不存在返回0

2.scard

  1. scard ---- 获取集合里面的元素个数
  2. scard set01

3.srem key value

  1. srem ---- 删除集合中元素
  2. srem set01 3
  3. SMEMBERS set01 3已经被删除掉

4.srandmember key

  1. srandmembe ---- 随机出几个数
  2. sadd set02 1 2 3 4 5 6 7 8
  3. srandmember set02 2

5.spop key

  1. spop ---- 随机出栈
  2. spop set01

6.smove key1 key2

  1. sadd set03 x y z
  2. smove set01 set03 2 set01中的2 移动到set03

7.数学集合类

  1. sadd set01 1 2 3 4 5
  2. sadd set02 1 2 3 a b
  3. 差集
  4. SDIFF set01 set02 返回 4 5 在第一个set中不在第二个set
  5. 交集
  6. SINTER set01 set02 返回 1 2 3
  7. 并集
  8. SUNION set01 set02 返回set01 set02 中的值 去掉重复

5.redis-Zset

Zset(有序集合)
1.zadd/zrange

  1. zadd zset01 60 v1 70 v2 80 v3 90 v4 100 v5
  2. zrange zset01 0 -1
  3. 带分数返回 withscores

2.zrangebyscore key start end

  1. zrangebyscore key start end----根据开始结束来取值
  2. zrangebyscore zset01 60 70
  3. zrangebyscore zset01 60 (90 表示不包含90
  4. zrangebyscore zset01 60 90 limit 1 2 从第一条开始截取2

3.zrem key

  1. zrem key value---- score下对应的value值,作用是删除元素
  2. zrem zset01 v1

4.zcard/zcount key score 区间/zrank key values

  1. zcard zset01 总条数
  2. zcount zset01 60 90 60-90个数
  3. zrank zset01 v2 返回1 返回对应下角标,从0开始