这周都在考试,只有最后两天老翁上课了,当然,这个试考的很难受,多亏老翁才能没末班,这周没学啥,写点老翁教的redis基本操作吧
redis 键和hash
启动redis
redis-server /etc/redis/redis.conf
打开
redis-cli
设置键值:
set key value 例如:set 'test1' 'hello'
设置带过期时间的键值,以秒为单位
setex key seconds value 例如:setex 'test2' 20 'hello2' 设置一个20秒后过期的键值
修改过期时间
expire key 时间(就是数字,以秒为单位)
expire test1
查看有效时间
ttL test1
设置多个键值
mset key value key value 例如:mset 'test3' 'hello3' 'test4' 'hello4'
获取单个(类似查询)
get key 根据键获取,不存在此键则返回nil
例子:get test1
获取多个
mget key key
例子: mget test1 test2
运算
要求值是数字
incr(默认加1)
例子: incr test1
incrby(加整数)
例子:incrby test 6 就是加6
decr(默认减1)
例子:decr test5
decrby(减整数)
decrby test5 6 就是减6
追加
append key value
例子:append test1 world
获取长度
strlen key
strlen test1
查找键(支持正则表达式)
查找全部: keys *
正则: keys 'test0'
判断是否存在
exists key ...
例子: exists test1
查看键对应的value类型
type key
删除键值
del key
Hash
用于储存对象,对象的格式为键值对
设置单个属性
hset run10 'name' 'zhang' 就是相当于在字典里再套个字典 run10的值就是 name 和zhang
设置多个属性
hmset run10 'name' 'zhang' 'name1' 'zhao'
获取一个属性的值
hget run10 name
获取多个属性的值
hmget run10 name name1
获取所有属性和值
hgetall key
获取所有属性
hkeys key
返回包含属性的个数
hlen key
获取所有值
hvals key
判断属性是否存在
hexists key name
删除属性和值
hdel run10 name
返回值得字符串长度
hstrlen key name
redis list set zset
list
按照插入顺序排序,在头部或者末尾添加 元素
在头部插入数据
lpush key value ...
在尾部插入数据
rpush run 100
在一个元素前或者后插入新元素
linsert run8 before heng zhang 在heng前面添加zhang
linsert run8 after heng zhao 在heng后面添加zhao
在指定索引添加或者修改数据
lset key index value
lset run8 2 heng 在run8第二位索引添加heng或者修改heng
获取(查看)
移除并且返回key相对应的第一个元素
Lpop key
移除并返回key相对应的最后一个元素
rpop key
查看指定范围的数据
lrange key start stop
lrange run8 0 -1 这是查看所有这个范围的数据
裁剪
ltrim key start stop 裁剪这个范围的数据 (不知道有啥作用)
返回储存在key里的list长度
llen key
返回列表里索引对应的元素
lindex key index
lindex run8 0
set
无序集合,元素具有唯一性,不重复,元素类型为string
添加元素
sadd run1 heng
返回key集合所有的元素
smembers key
返回集合元素个数
scard key
求多个集合交集(就是相同的元素)
sinter run run1 run2
求某几个与其他集合的差集(就是不一样的元素)
sdiff run run1
求多个集合的合集(就是全部)
sunion run1 run2
判断元素是否在集合中
sismember run2 heng
zset
sorted set 有序集合,元素为string类型,元素唯一
每个元素都会关联一个double类型的score,表示权重,通过权重将元素从小到大排序,score可以重复
添加
zadd key score member
zadd run8 2 zhang
返回指定范围内的元素
zrange run8 0 -1
返回元素个数
zcard run2
返回有序集key中,score值在min和max之间的成员个数
zcount run8 5 20
返回有序集key中,成员member的score值
zscore run8 heng