redis数据类型及常用命令

文章目录

  • 数据类型
  • String 类型
    • 赋值
    • 取值
    • 取值并赋值
    • 设置多个键
    • 获取多个键
    • 删除键
    • 数值递增
    • 指定增加的数值
    • 数值递减
    • 指定减少的数值
    • 向尾部增加数据
    • 获取字符串长度
    • 截取字符串
    • 指定字符串替换
    • 设置键的过期时间同时设置值
  • Hash
    • 赋值
      • 设置一个值
      • 设置多个值
    • 取值
      • 取一个值
      • 取多个值
      • 取全部值
    • 删除字段
    • 给字段增加指定数值
    • 判断字段是否存在
    • 获取字段值、字段名
      • 获取字段名
      • 获取字段值
    • 获取字段数量
  • List
    • 向列表两端添加数据
      • 向左边添加数据
      • 向右边添加数据
    • 查看列表
    • 从列表两端弹出元素
      • 从左边弹出
      • 从右边弹出
    • 获取列表的中元素的个数
    • 获取和设置指定索引的元素值(key 必须存在)
      • 获取指定索引的元素值
      • 设置指定索引的元素值
  • set
    • 增加元素
    • 删除元素
    • 获取集合中所有元素
    • 判断元素是否在集合中
    • 获得集合中元素的个数
    • 从集合中弹出一个元素
  • sortedset(zset)
    • 增加元素(会根据分数排序)
    • 获取元素的分数
    • 删除元素
  • 常用命令
    • 检查键是否存在
    • 设置过期时间
    • 清空过期时间
    • 获取键的时间
    • 查看键的类型
    • 获取所有键
    • 模糊查看所有键
    • 删除键(不管什么类型的)
    • 重命名键名

数据类型

  1. String字符类型
  2. map(hash)散列类型
  3. list列表类型
  4. set集合类型
  5. sortedset(zset)有序集合类型

list :有序,可以重复 ;(有序是指添加时候的顺序)

set :无序,不可重复 ;

String 类型

赋值

key 存在则修改对应的值,不存在则添加 key

set key value

在这里插入图片描述

取值

get key

redis数据类型及常用命令_第1张图片

取值并赋值

key 存在则修改对应的值,不存在则新建 key。

key 存在的时候修改值,返回的是 key 对应的修改之前的值。

key 不存在的时候,返回的是nil

getset key value

redis数据类型及常用命令_第2张图片

redis数据类型及常用命令_第3张图片

设置多个键

mset key value [key value ......]

在这里插入图片描述

获取多个键

mget key [key .......]

redis数据类型及常用命令_第4张图片

删除键

可以删除多个

del key [key .......]

redis数据类型及常用命令_第5张图片

数值递增

当存储的字符串是整数时

incr key

redis数据类型及常用命令_第6张图片

指定增加的数值

当存储的字符串是整数时

incrby key increment

redis数据类型及常用命令_第7张图片

数值递减

当存储的字符串是整数时

decr key

redis数据类型及常用命令_第8张图片

指定减少的数值

当存储的字符串是整数时

decrby key decrement

redis数据类型及常用命令_第9张图片

向尾部增加数据

append是向键值对的末尾追加 value,如果键不存在,则将改建的值设置为 value,相当于set key value,返回值是追加后字符串的总长度。

append key value

redis数据类型及常用命令_第10张图片

获取字符串长度

strlen key

redis数据类型及常用命令_第11张图片

截取字符串

返回的是截取的子串,下标从0开始,起始位置和结束位置都包含。

当起始位置是 0,结束为止为 -1 的时候,截取的是整个字符串。

getrange key 起始位置 结束位置

redis数据类型及常用命令_第12张图片

指定字符串替换

setrange key 起始位置 需要替换的值

将 键为 a 的字符串从 下标为 2 的位置开始 替换成 redis

redis数据类型及常用命令_第13张图片

设置键的过期时间同时设置值

时间默认以秒为单位

setex key 过期时间 value

redis数据类型及常用命令_第14张图片

Hash

hash叫散列类型,它提供了字段和字段值的映射。字段值只能是字符串类型,不支持散列类型、集合类型等其它

类型

redis数据类型及常用命令_第15张图片

赋值

设置一个值

hset key filed value

在这里插入图片描述

设置多个值

hmset key filed value [filed value ......]

在这里插入图片描述

取值

取一个值

hget key filed

在这里插入图片描述

取多个值

hmget key filed [filed ......]

在这里插入图片描述

取全部值

hgetall key

redis数据类型及常用命令_第16张图片

删除字段

hdel key filed [filed ......]

redis数据类型及常用命令_第17张图片

给字段增加指定数值

当时字段的值是数值类型的时候

hincrby key filed increment

redis数据类型及常用命令_第18张图片

判断字段是否存在

0 :不存在,1 :存在

hexists key filed

redis数据类型及常用命令_第19张图片

获取字段值、字段名

获取字段名

hkeys key

redis数据类型及常用命令_第20张图片

获取字段值

hvals key

在这里插入图片描述

获取字段数量

hlen key

在这里插入图片描述

List

Redis 中的 list 是采用链表的方式来存储的,与 java 中的 LinkedList 相似,所以对 Redis 中的 List 的操作,是操作两端的数据。

向列表两端添加数据

向左边添加数据

lpush key value [value ......]

在这里插入图片描述

向右边添加数据

rpush key value [value ......]

在这里插入图片描述

查看列表

列表类型最常用的命令之一,获取列表中的某一片段,将返回start、stop之间的所有元素(包含两端的元素),索

引从0开始。索引可以是负数,如:“-1”代表最后边的一个元素

lrange key start end

redis数据类型及常用命令_第21张图片

从列表两端弹出元素

LPOP(rpop)命令从列表左边(右边)弹出一个元素,会分两步完成:

第一步是将列表左边的元素从列表中移除

第二步是返回被移除的元素值

从左边弹出

lpop key

redis数据类型及常用命令_第22张图片

从右边弹出

rpop key

redis数据类型及常用命令_第23张图片

获取列表的中元素的个数

llen key

redis数据类型及常用命令_第24张图片

获取和设置指定索引的元素值(key 必须存在)

获取指定索引的元素值

lindex key index

redis数据类型及常用命令_第25张图片

设置指定索引的元素值

lset key index value 

redis数据类型及常用命令_第26张图片

set

增加元素

sadd key value [value ......]

redis数据类型及常用命令_第27张图片

删除元素

srem key value [value ......]

redis数据类型及常用命令_第28张图片

获取集合中所有元素

smembers key

redis数据类型及常用命令_第29张图片

判断元素是否在集合中

0 : 不存在 ,1 :存在

sismember key value

redis数据类型及常用命令_第30张图片

获得集合中元素的个数

scard key

在这里插入图片描述

从集合中弹出一个元素

由于 set 集合是无序的,所以会随机的弹出一个值。

spop test

在这里插入图片描述

sortedset(zset)

Sortedset又叫zset

Sortedset是有序集合,可排序的,但是唯一。

Sortedset和set的不同之处,是会给set中的元素添加一个分数,然后通过这个分数进行排序。

增加元素(会根据分数排序)

向有序集合中加入一个元素和该元素的分数,如果该元素已经存在则会用新的分数替换原有的分数。返回值是新加

入到集合中的元素个数,不包含之前已经存在的元素

zadd key score member [score member ......]

在这里插入图片描述

获取元素的分数

zscore key member

在这里插入图片描述

删除元素

zrem key member

在这里插入图片描述

常用命令

检查键是否存在

0 :不存在,1 :存在

返回值为 存在的个数

exists key [key ......]

redis数据类型及常用命令_第31张图片

设置过期时间

默认以秒为单位

expire key 秒数

在这里插入图片描述

设置为以 毫秒 为单位

pexpire key milliseconds

清空过期时间

对应的值还在

persist key

redis数据类型及常用命令_第32张图片

在这里插入图片描述

获取键的时间

ttl key

redis数据类型及常用命令_第33张图片

查看键的类型

type key

在这里插入图片描述

获取所有键

keys *

在这里插入图片描述

模糊查看所有键

keys *key*

在这里插入图片描述

删除键(不管什么类型的)

del key [key ......]

在这里插入图片描述

重命名键名

rename key newkey

redis数据类型及常用命令_第34张图片

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