数据类型:
1,String
是Redis最基本的数据类型,一个key对应一个value,是二进制安全的。可以包含任何数据,比如图片或者对象(要序列号)key最大512M。
2,Hash
这是一个键-值对集合,特别适合于存储对象
//hset 一次设置一个值, hget 一次得到一个值
127.0.0.1:6379> hset userinfo userName dmin01
(integer) 1
127.0.0.1:6379> hget userinfo userName
“dmin01”
//hmset 一次设置多个值 ,hgetall 一次取出多个值
127.0.0.1:6379> hmset userinfo username admin password 124 note “this is note”
OK
127.0.0.1:6379> hgetall userinfo
1) “userName”
2) “dmin01”
3) “username”
4) “admin”
5) “password”
6) “124”
7) “note”
8) “this is note”
127.0.0.1:6379> del userinfo
(integer) 1
3,List
简单的字符串列表,按照插入顺序排序,添加数的时候可以指定位置(在左,在右)
//lpush 左边插入 , rpush 右边插入,lrange 获取
127.0.0.1:6379> lpush mylist a //左边插入
(integer) 1
127.0.0.1:6379> lpush mylist b
(integer) 2
127.0.0.1:6379> lpush mylist c
(integer) 3
127.0.0.1:6379> lrange mylist 0 2 //查看
1) “c”
2) “b”
3) “a”
127.0.0.1:6379> rpush mylist x //右边插入
(integer) 4
127.0.0.1:6379> rpush mylist y
(integer) 5
127.0.0.1:6379> rpush mylist z
(integer) 6
127.0.0.1:6379> lrange mylist 0 -1 \查看 0 -1表示查看所有
1) “c”
2) “b”
3) “a”
4) “x”
5) “y”
6) “z”
多个一起操作
127.0.0.1:6379> rpush xxx a b c d e f
(integer) 6
127.0.0.1:6379> lrange xxx 0 -1
1) “a”
2) “b”
3) “c”
4) “d”
5) “e”
6) “f”
4,Set
无重复数据,无顺序
//sadd 添加数据 ,smembers 获取数据 ,
127.0.0.1:6379> sadd s1 aa bb cc dd ee aa bb cc //单个插入语法一样
(integer) 5 //添加的是8个数据,去重复之后是5个
127.0.0.1:6379> smembers s1 //显示结果无序
1) “bb”
2) “aa”
3) “dd”
4) “cc”
5) “ee”
5,ZSet(Sorted set) 有序集合
它关联一个double类型分数,用你来排序
zset中的成员必须是唯一的,但是分数可以相同
// zadd 添加数据,zrangebyscore 根据分数排序获取,zrange [] [] [] withscores获取带分数的信息
127.0.0.1:6379> zadd yyy 60 stu1
(integer) 1
127.0.0.1:6379> zadd yyy 50 stu2
(integer) 1
127.0.0.1:6379> zadd yyy 80 stu3
(integer) 1
127.0.0.1:6379> zadd yyy 75 stu4
(integer) 1
127.0.0.1:6379> zrangebyscore yyy 0 100 //0 100 代表分数
1) “stu2”
2) “stu1”
3) “stu4”
4) “stu3”
127.0.0.1:6379> zrange yyy 0 -1 withscores // 0 -1代表查询需所有
1) “stu2”
2) “50”
3) “stu1”
4) “60”
5) “stu4”
6) “75”
7) “stu3”
8) “80”