全局命令
命令 功能
set 创建键值对
keys 遍历查看所有键
exists 判断一个键是否存在,1存在,0不存在
dbsize 当前数据库中有多少个键
del 删除一个或多个键
expire 设置过期时间
ttl 查看过期时间
type 判断键的类型

Redis有5种数据结构,它们是键值对中的值,对于键来说有一些通用的命令。

1.查看所有键

命令:keys *

#keys *会将所有的键输出
127.0.0.1:6379> keys *
1) "hello"
2) "a"
3) "python"
4) "mylist"
5) "name"

#添加一个键 127.0. 0.1: 6379> setWorld peace OK 127.0. 0.1: 6379> keys * 1) " hello " 2) " a " 3) " python " 4) " mylist " 5) " World "#已经添加 6) " name "

2.键总数

命令:dbsize

dbsize命令会返回当前数据库中键的总数。

127.0.0.1:6379> dbsize
(integer) 6   #一共存在6个键
127.0.0.1:6379> keys *  #查看所有
1) "hello"
2) "a"
3) "python"
4) "mylist"
5) "World"
6) "name"

dbsize命令在计算键总数时不会遍历所有键,而是直接获取Redis内置的键总数变量,所以dbsize命令的时间复杂度是O(1)。

keys命令会遍历所有键,所以它的时间复杂度是O(n),当Redis保存了大量键时,线上环境禁止使用。

3检查键是否存在

命令:exists key

如果键存在则返回1,不存在则返回0。

127.0.0.1:6379> exists name
(integer) 1    #存在
127.0.0.1:6379> exists huaxia
(integer) 0    #不存在

4.删除键

命令:del key [key …]

del是一个通用命令,无论值是什么数据结构类型,del命令都可以将其删除:

127.0.0.1:6379> del python
(integer) 1    #删除成功
127.0.0.1:6379> exists python
(integer) 0    #查询不存在
127.0.0.1:6379> del name
(integer) 1
127.0.0.1:6379> exists name
(integer) 0

返回结果为成功删除键的个数,假如删除一个不存在的键,就会返回0:

127.0.0.1:6379> del maoxian
(integer) 0  #删除个数为0,证明不存在

同时del命令可以支持删除多个键:

127.0.0.1:6379> set Paul 3
OK
127.0.0.1:6379> set Harden 13
OK
127.0.0.1:6379> set Gordon 10
OK
127.0.0.1:6379> del Paul Harden Gordon
(integer) 3

5.键过期

语法:expire key times

Redis支持对键添加过期时间,当超过过期时间后,会自动删除键。

127.0.0.1:6379> set manzi zero
OK    #添加一个键
127.0.0.1:6379> expire manzi 8
(integer) 1     #设置8秒的过期时间
127.0.0.1:6379> ttl manzi
(integer) 3     #还剩3秒
127.0.0.1:6379> ttl manzi
(integer) -2    #键已经被删除

ttl命令会返回键的剩余过期时间,它有3种返回值:

(1)大于等于0的整数:键剩余的过期时间。

(2)-1:键没设置过期时间

(3)-2:键不存在

127.0.0.1:6379> exists hello
(integer) 1    #键存在
127.0.0.1:6379> ttl hello
(integer) -1   #没有设置过期时间

6.键的数据结构类型

命令:type key

127.0.0.1:6379> set a b
OK
127.0.0.1:6379> type a
string  #字符串
127.0.0.1:6379> rpush list_one a b c d e
(integer) 5
127.0.0.1:6379> type list_one
list       #列表

键的数据类型指的是它的值代表的数据类型,单独讨论键没有意义。

API的理解和使用——全局命令相关推荐

  1. 深入剖析Redis系列(四) - Redis数据结构与全局命令概述

    前言 Redis 提供了 5 种数据结构.理解每种数据结构的特点,对于 Redis 的 开发运维 非常重要,同时掌握 Redis 的 单线程命令处理 机制,会使 数据结构 和 命令 的选择事半功倍. ...

  2. vim 底行命令模式下的全局命令 g(global)

    文章目录 命令格式介绍 常用的 ex 指令 关于 range 参考示例 结合替换指令 s 使用 将包含 pattern 的行追加到指定的寄存器中 插入空行 打印符合要求的行 删除匹配的行 删除不匹配的 ...

  3. scrapy命令明细:全局命令

    接下来我们来一一介绍scrapy命令有哪些,其实灰常少,也就十四五个,在这十四五个中,常用的就纳么两三个而已,如: scrapy startproject(创建项目). scrapy crawl XX ...

  4. 第二章 API的理解和使用

    2.1.1全局命令 Key * 查看所有键,(慎用,会把所有键都遍历一次并列出) Dbsize 查看键总数,不会遍历所有键,只是从内置函数中读取一个数 Exists [key] 检查键是否存在 Del ...

  5. MySQL数据库进阶(API的理解、Python对MySQL的接口)

    文章目录 一.API的理解 二.Python对MySQL的API 本篇文章主要是关于Python对MySQL的接口API的内容,简单来说就是在Python中调用MySQL语句来执行 一.API的理解 ...

  6. 第一章 基本数据类型-API的理解和使用

    1.1 基础 1.1.1 全局命令 ​ Redis有五种数据结构,对于键来说有一些通用的命令 1.查看所有的键 ​ **Keys ** 127.0.0.1:6379> set name_1 ke ...

  7. 微信小程序(五)--- Vant组件库,API Promise化,MboX全局数据共享,分包相关

    目录 一.npm包 1.Vant Weapp (1)安装Vant组件库 (2)使用Vant组件 (3)定制全局主题样式 2.API Promise化 (1)基于回调函数的异步API的缺点 (2)API ...

  8. 我是如何根据豆瓣api来理解Restful API设计的

    1.什么是REST REST全称是Representational State Transfer,表述状态转移的意思.它是在Roy Fielding博士论文首次提出.REST本身没有创造新的技术.组件 ...

  9. 网上整理的对于Rest和Restful api的理解

    一.什么是Rest? REST不是"rest"这个单词,而是几个单词缩写 -- REpresentational State Transfer 直接翻译:表现层状态转移,但这个翻译 ...

  10. 对tf.reduce_mean API的理解就是求平均值,reduce指的是一串数据求平均值后维数降低了,可不是吗,一串向量变成了一个数,维数自然降低了

    tf.math.reduce_mean(input_tensor, axis=None, keepdims=False, name=None ) 对tf.reduce_mean的理解就是求平均值,re ...

最新文章

  1. 算法导论之斐波那契堆
  2. c primer英文版第5版_2019足坛10大巨星:梅西第2范戴克第3,C罗第5
  3. OSChina 周五乱弹 ——发现办公室女同事走光了
  4. Jabber 创建一个application dial rule
  5. java环境安装菜鸟教程,Java基础教程---JDK的安装和环境变量的配置
  6. SketchUp Pro 2019下载|SketchUp Pro 2019(草图大师)免安装绿色精简版下载
  7. Java基础教程——字符流
  8. 台式计算机启用时间查看,win7系统如何查看电脑的开关机时间想知道是否有他人使用...
  9. FOC控制中电流环带宽
  10. 微信小程序实现车牌号录入
  11. 令代码停止_那些令人困惑的灯泡代码是什么意思?
  12. wps在word文档中插入xlsx格式文档会自动打开
  13. 囧,现在才只QQ有远程控制
  14. 史上最简单的Linux内核IIO子系统入门demo_内核版本4.4.194
  15. 如何建立一个网站?规划、设计、目的、原则、宣传(一)
  16. 利用ffmpeg将mp4视频转换成多张jpg图片
  17. (附源码)springboot高校学生健康打卡系统的设计与实现 毕业设计021009
  18. kaldi中文语音识别_基于thchs30(7)
  19. 用html5构建兼容iE6的网页
  20. python文件如何打包生成.exe文件?(打包教程)

热门文章

  1. Ansys Lumerical | 铌酸锂热调制波导仿真
  2. PyG 中Message Passing机制详解
  3. 【常见网页排版布局】
  4. [区块链]区块链技术在冷链运输领域的应用
  5. Miss okhttp
  6. 焦作java培训_周口市转行做it
  7. 2017-2018-2 20155225《网络对抗技术》实验四 恶意代码分析
  8. 网页 游戏服务器连接超时,连接游戏服务器超时怎么解决
  9. 对《骨骼运动变换的数学计算过程详解》一文的理解
  10. 学习Python,怎能不懂点PEP呢?