--开启redis
redis-server redis.conf
--链接redis服务器,默认链接localhost客户端
redis-cli
--设置值
set key value
--设置过期时间
expire key second
--原子性自增、自减
INCR key
DECR key
-- 加/减2个
INCRBY key 2
DECRBY key 2
-- 当前值后面添加值
append key value
redis的5种数据类型
其中字符串不详细概述
1.list,双向链表实现
lpush mylist "abc"; //当不存在该key时,创建一个双向链表,并赋值
lpush mylist "cda",“cdb”; //在头结点处添加元素
rpush mylist "xyz"; //在尾部添加元素
-- 根据索引设置
lset mylist 1 "first"
--输出链表
lrange mylist 0 -1 //0代表起始位置,第四个位置-1代表链表最后(1代表当前下一个)
2.散列表
hset key field value //field可以理解为散列桶
hget key field
hmset key field value
--获取2个散列桶直接相同key的value集合
--获取所有key的集合
hgetall key;
--获取hash里key的集合
hkeys key;
--获取hash里key对应的value的集合
HVALSkey;
4.集合 ,主要操作set(命令S开头)
3.有序集合 sorted list(命令以Z开头的),key必须为float、int等数字类型
zscore:取列表key的值
zrange:获取列表值集合
zrangebyscore sortedlist (1 2 ; //根据key的区间进行取值 ,开闭区间
zrem:删除
zrank:排名,具体如下图
zinterstore:两个集合的交集,并合计共同的key的score,如下图
redis中的"事务"是一组命令的集合。事务同命令一样都是redis的最小执行单元。一组事务中的命令要么都执行,要么都不执行,Redis 不支持回滚