Redis的数据类型操作(二)
1.String:key-value(做缓存)
Redis中所有的数据都是字符串。命令不区分大小写,key是区分大小写的。Redis是单线程的。Redis中不适合保存内容大的数据。
get、set、incr:加一(
生成id)
decr:减一
linux指令例子:
set key1 11;
get key1; 输出11
incr key1; 输出12
decr key1;输出11
2.Hash:key-fields-values(做缓存)
相当于一个key对于一个map,map中还有key-value
使用hash对key进行归类。
hset:向hash中添加内容
hget:从hash中取内容
linux指令例子:
hset hash1 key1 value1;
hget hash1 key1; 取出hash1下指定key的value
3.List:有顺序可重复
linux指令例子:
lpush list1 a b c d 向list1左方向逐个放进去-即list1数据情况为 d c b a
rpush list1 1 2 3 4 向list1的右方向逐个放进去-即list1数据情况为 d c b a 1 2 3 4
lrange list1 0 -1 获得list1所有数据情况--输出情况 d c b a 1 2 3 4
lpop list1 删除list1第一个数据--输出 d
rpop list1 删除list1的最后一个数据-输出4
4.Set:元素无顺序,不能重复
sadd set1 a b c c d --去重添加a b c c d几个数据到set1集合中
smembers set1 --获得set1集合数据情况 b c d a
srem set1 a 删除set1集合中的a 数据
还有集合运算命令
sadd set2 a b c e
sdiff set1 set2--输出d
sdff set2 set1 --输出e
sinter set1 set2--输出 a b c
sunion set1 set2 -- 输出a b c d e
5.SortedSet(zset):有顺序,不能重复
zadd zset1 2 a 5 b 1 c 6 d--给zet1中的各个元素编排好先后顺序后放入
zrange zset1 0 -1--获得zet1的所有数据--输出 c a b d
zrem zset1 a --删除zset1中的a数据
zrevrange zset1 0 -1 -获得倒序的数据--输出d b c
zrange zset1 0 -1 withscores--获得排序标识和对应的数据-输出 c 1 b 5 d 6