一,redis常用的数据类型--String
Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,
如
字符串(strings),
散列(hashes),
列表(lists),
集合(sets),
有序集合(sorted sets)
bitmaps,
hyperloglogs
地理空间(geospatial)
一,string字符串
1.1String常用的指令有:
1)set 数据插入
127.0.0.1:6379> set name laoli
OK
2)get 数据获取
127.0.0.1:6379> get name
"laoli"
3)mset 批量插入
127.0.0.1:6379> mset name1 laoli name2 laowang name3 laozhang
OK
4)mget 批量获取
127.0.0.1:6379> mget name1 name2 name3
1) "laoli"
2) "laowang"
3) "laozhang"
5)append 追加字符串
127.0.0.1:6379> append name haoren (integer) 11 127.0.0.1:6379> get name "laolihaoren"
6)del 删除数据
127.0.0.1:6379> del name (integer) 1 127.0.0.1:6379> get name (nil)
7)incr,incrby
incr 自动加1,incrby 加后面想添加的数值;
127.0.0.1:6379> incr name (integer) 1 127.0.0.1:6379> get name "1" 127.0.0.1:6379> incr name (integer) 2 127.0.0.1:6379> get name "2"
127.0.0.1:6379> incrby name 12 (integer) 14 127.0.0.1:6379> get name "14"
8)decr,decrby
decr自动减1;decry减去你想减的数值
127.0.0.1:6379> decr name (integer) 13 127.0.0.1:6379> get name "13" 127.0.0.1:6379> decrby name 3 (integer) 10 127.0.0.1:6379> get name "10"
9)strlen 字符串长度
127.0.0.1:6379> strlen name1 (integer) 5 127.0.0.1:6379> get name1 "laoli"
10)setrange 字符串替换赋值,从指定的位置开始替换
127.0.0.1:6379> set key1 "hello world" OK 127.0.0.1:6379> setrange key1 6 laozhang (integer) 14 127.0.0.1:6379> get key1 "hello laozhang" 127.0.0.1:6379> setrange key1 5 ceshi (integer) 14 127.0.0.1:6379> get key1 "helloceshihang"
11)strlen 获取key的长度
127.0.0.1:6379> strlen name1 (integer) 5 127.0.0.1:6379> get name1 "laoli"
12)incrbyfloat 增加浮点数,正数为加,负数为减
127.0.0.1:6379> incrbyfloat p 1 "1" 127.0.0.1:6379> get p "1" 127.0.0.1:6379> incrbyfloat p 1.1 "2.1" 127.0.0.1:6379> get p "2.1"
127.0.0.1:6379> incrbyfloat p -0.5
"1.6"
13)setnx 命令在指定的 key 不存在时,为 key 设置指定的值。
返回值1,成功;0,失败
127.0.0.1:6379> setnx sex boy (integer) 1 127.0.0.1:6379> get sex "boy" 127.0.0.1:6379> setnx sex gril (integer) 0 127.0.0.1:6379> get sex "boy"
2,应用场景
1)计数器
2)统计数量:比如网站的pv和uv;当前的关注数,文章的阅读数等等;