【Redis】常用命令、各种数据结构及命令

目录

一、常见数据结构

二、常用命令

1、查询符合的所有key

2、删除key

3、判断key是否存在 

4、给key设置过期时间

5、查看key的剩余过期时间

三、不同数据类型的操作命令

1、String

1.set

2.get

3.mset

4.mget

5.incr

6.incrby

7.incrbyfloat

8.setnx

9.setex

2、Hash

1.hset

2.hget

3.hmset

4.hmget

5.hgetall

6.hkeys

7.hvals

8.hincrby

9.hsetnx

3、List

1.lpush

2.rpush

3.lpop

4.rpop

5.lrange

6.blpop与brpop

4、Set

1.sadd

2.srem

3.scard

4.sismembers

5.smembers

6.sinter

7.sdiff

7.sunion

5、SortedSet

1.zadd

2.zrem

3.zscore

4.zrank

5.zcard

6.zcount

7.zincrby

8.zrange

9.zrangebyscore

10.zdiff、zinter、zunion


一、常见数据结构

Redis是一种k-v类型的非关系型数据库,他的key是String类型的,但他的value却有着丰富的类型

他常见的数据类型有5种:String类型、Hash类型、List类型、Set类型、SortedSet类型。

String类型就是简单的字符串类型,但是在String类型里又分为字符串类型、整数类型、浮点数类型,Hash类型则于Java里的HashMap类似其value是一个无序的字典,List类型与Java中的LinkedList类似,支持正向、反向检索,Set类似于Java里的HashSet类型,SortedSet相比Set是可以排序的与Java中TreeSet相同但是底层的实现确是不同的

二、常用命令

1、查询符合的所有key

keys 匹配规则

类似MySQL的模糊查询,要查找所有的key则为keys *

【Redis】常用命令、各种数据结构及命令_第1张图片  

2、删除key

del key1 key2 ……

可一次删除多个也可一次删除一个key

【Redis】常用命令、各种数据结构及命令_第2张图片  

3、判断key是否存在 

exists key

判断key是否存在如果存在则返回1不存在则是0

【Redis】常用命令、各种数据结构及命令_第3张图片  

4、给key设置过期时间

expire key time

可以给key设置指定存活时间,过了存活时间就被删除

【Redis】常用命令、各种数据结构及命令_第4张图片  

5、查看key的剩余过期时间

ttl key

对key设置过期时间后我们就可以使用该命令来查看指定key的剩余时间

【Redis】常用命令、各种数据结构及命令_第5张图片  

三、不同数据类型的操作命令

1、String

String类型是redis里最简单的存储类型。他的value是字符串,但又根据不同的格式将字符串分为字符串、整数、浮点数三种,其中整数与浮点数支持自增与自减。下面是他的常见命令

1.set

set value 

添加一个String类型的键值对,如果该键值对已存在就对其value进行修改

 【Redis】常用命令、各种数据结构及命令_第6张图片

2.get

get key

根据其key获取指定key的value

【Redis】常用命令、各种数据结构及命令_第7张图片  

3.mset

mset key1 value1 key2 value2 ……

批量添加多个String类型的键值对

【Redis】常用命令、各种数据结构及命令_第8张图片  

4.mget

mget key1 key2

批量获取多个key对应的value

  

5.incr

incr key

让指定key对应value自增1

【Redis】常用命令、各种数据结构及命令_第9张图片  

6.incrby

incrby key num

让指定key的value自增num

【Redis】常用命令、各种数据结构及命令_第10张图片  

7.incrbyfloat

incrbyfloat key num

让一个浮点型value自增num

【Redis】常用命令、各种数据结构及命令_第11张图片  

8.setnx

setnx key value

添加一个String类型的键值对如果该key存在就不会创建

【Redis】常用命令、各种数据结构及命令_第12张图片  

9.setex

setex key time value

创建一个String类型键值对并指定存活时长

【Redis】常用命令、各种数据结构及命令_第13张图片  

2、Hash

其中他的value是一个无序字典,他的value里面的一组一组的key-value

1.hset

hset key fileld value

添加一个hash类型的键值对

【Redis】常用命令、各种数据结构及命令_第14张图片  

2.hget

hget key field

获取hash类型key里的value

【Redis】常用命令、各种数据结构及命令_第15张图片  

3.hmset

hmest  key  field value field1 value1 ……

批量添加多个field-value

 

4.hmget

hmget key field1 field2……

批量获取key下多个field对应的value

【Redis】常用命令、各种数据结构及命令_第16张图片  

5.hgetall

hgetall key

获取key下所有的field-value

【Redis】常用命令、各种数据结构及命令_第17张图片 

6.hkeys

hkeys key

获取key下的所有field

【Redis】常用命令、各种数据结构及命令_第18张图片  

7.hvals

hvals key

获取key下所有的field对应的value

【Redis】常用命令、各种数据结构及命令_第19张图片  

8.hincrby

hincrby key field num

让key下的field对应的value自增num

【Redis】常用命令、各种数据结构及命令_第20张图片  

9.hsetnx

hsetnx key field value

添加一个key下对应的file-value如果field存在则不修改

  

3、List

该类型与Java里的LinkedList类型,它支持正向与反向检索

1.lpush

lpush key element

在list的左边添加一个element

  

2.rpush

rpush key element

在list的右边添加一个element

  

3.lpop

lpop key

移除并返回列表左边的第一个元素

  

4.rpop

rpop key

移除并返回列表右边的第一个元素

  

5.lrange

lrange key star end

返回一段角标内的所有元素

【Redis】常用命令、各种数据结构及命令_第21张图片  

6.blpop与brpop

与lpop、rpop类似只不过当List里面没有元素的时候会阻塞等待直到有元素,这与阻塞队列类型

4、Set

与Java里面的hashSet类似,可以看作value为null的hash。他是无序的且不可重复查找快而且支持交集、并集、差集

1.sadd

sadd key member

向set中添加一个或多个元素

  

2.srem

srem key member

移除key里指定的元素

【Redis】常用命令、各种数据结构及命令_第22张图片  

3.scard

scard key

返回key里的元素个数

【Redis】常用命令、各种数据结构及命令_第23张图片  

4.sismembers

sismembers key member

判断元素是否在该set里

  

5.smembers

smembers key

获取set里面的元素

【Redis】常用命令、各种数据结构及命令_第24张图片  

6.sinter

sinter key1 key2

求key1 set与key2 set的交集

7.sdiff

sdiff key1 key2

求key1 set与key2 set的差集

7.sunion

sunion key1 key2

求key1 set与key2 set的并集

5、SortedSet

可排序的结合,与Java里的TreeSet类型,SortedSet在插入时会带有一个score,会基于score进行排序

1.zadd

zadd key score member

添加一个或多个元素到SortedSet

  

2.zrem

zrem key member

删除set指定的元素

  

3.zscore

zscore key member

获取set里指定元素的score

【Redis】常用命令、各种数据结构及命令_第25张图片  

4.zrank

zrank key member

获取set里指定元素的排名

 

 排名是以0开始的

5.zcard

zcard key

获取set里元素的个数

【Redis】常用命令、各种数据结构及命令_第26张图片  

6.zcount

zcount key min max

统计set里score在min-max范围内的个数

【Redis】常用命令、各种数据结构及命令_第27张图片  

7.zincrby

zincrby key num member

让set里指定元素自增num

  

8.zrange

zrange key min max

按score排序后获取指定排名范围内的元素

 

9.zrangebyscore

zrangebyscore key min max

按照score排序后获取指定score范围内的元素

10.zdiff、zinter、zunion

与Set相同获取两个集合的交并差集

你可能感兴趣的:(Redis,Java,redis,数据库,缓存,java)