2018-05-01随笔

这周都在考试,只有最后两天老翁上课了,当然,这个试考的很难受,多亏老翁才能没末班,这周没学啥,写点老翁教的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

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容