redis数据结构
redis命令查询参考地址:
http://redis.cn/commands.html
1字符串操作:
#设置一个key
set k1 v1
#查看一个key
get k1
#设置多个key
MSET k2 v2 k3 v3
#查看多个key
MGET k1 k2 k3
#天然计数器
加1
set k1 1
INCR k1
get k1
加N
INCRBY k1 10
减1
DECR k1
INCRBY k1 -1
减N
DECRBY k1 N
INCRBY k1 -N
2列表操作:
#插入列表
从左边压入数据
LPUSH list a
从右边压入数据
RPUSH list b
#查看列表长度
LLEN list
#查看列表内容
LRANGE list 0 -1
#删除列表元素
从左边删除元素
LPOP list
从右边删除元素
RPOP list
#删除整个列表
DEL list
3HASH操作:
mysql数据格式:
user表
id name job age
1 boss it 18
2 wei it 24
3 cook it 30
hash类型存储格式:(根据user表id为1去匹配相应字段)
key field1 value field2 value field3 value
user:1 name boss job it age 18
user:2 name wei job it age 18
user:3 name cook job it age 18
#创建一个hash数据
127.0.0.1:6379> HMSET user:1 name boss job it age 18
OK
127.0.0.1:6379> HMSET user:1 name boss job it age 18
(error) ERR wrong number of arguments for HMSET
127.0.0.1:6379> HMSET user:2 name wei job it age 18
OK
127.0.0.1:6379> HMSET user:3 name cook job it age 18
OK
#查看hash里指定字段的值
127.0.0.1:6379> HMGET user:1 name
1) "boss"
127.0.0.1:6379> HMGET user:2 job age
1) "it"
2) "18"
#查看hash里指定字段的所有值
127.0.0.1:6379> HGETALL user:1
1) "name"
2) "boss"
3) "job"
4) "it"
5) "age"
6) "18"
4集合操作:
#创建集合
SADD set1 1 2 3
SADD set2 2 3 4
#查看集合成员
SMEMBERS set1
#查看集合的交集
127.0.0.1:6379> SINTER set1 set2
1) "2"
2) "3"
127.0.0.1:6379> SINTER set2 set1
1) "2"
2) "3"
#查看集合的差集
127.0.0.1:6379> SMEMBERS set1
1) "1"
2) "2"
3) "3"
127.0.0.1:6379> SMEMBERS set2
1) "2"
2) "3"
3) "4"
127.0.0.1:6379> SDIFF set1 set2(找出对比set2中没有的元素)
1) "1"
127.0.0.1:6379> SDIFF set2 set1(找出对比set1中没有的元素)
1) "4"
#查看集合的并集
127.0.0.1:6379> SUNION set1 set2
1) "1"
2) "2"
3) "3"
4) "4"
5有序集合:
#添加有序集合
ZADD cj 100 qq
ZADD cj 90 ww
ZADD cj 66 tt
ZADD cj 98 wang
ZADD cj 88 bao
ZADD cj 96 meng
#计算成员个数
ZCARD cj
#计算某个成员分数
ZSCORE cj tt
#按照升序查看成员名次
ZRANK cj ww
#按照降序查看成员名次
ZREVRANK cj qq
#删除成员
ZREM cj tt
#返回指定排名范围的学员
127.0.0.1:6379> ZRANGE cj 0 -1
1) "bao"
2) "ww"
3) "meng"
4) "wang"
5) "qq"
#返回指定分数范围的学员
127.0.0.1:6379> ZRANGEBYSCORE cj 98 100
1) "wang"
2) "qq"
127.0.0.1:6379> ZRANGEBYSCORE cj 98 100 withscores
1) "wang"
2) "98"
3) "qq"
4) "100"
#增加成员分数
ZINCRBY cj 60 wei