redis 键 (key)

基本数据类型:string 字符串  list (列表)  set(集合)  hash(类似java 中的Map)   zset(有序集合)  

官方命令doc

redis 键 (key)

keys *

exists key的名字,判断某个key是否存在

move key db:当前库就没有了,被移除了

expire key 秒钟:为给定的key设置过期时间

ttl key 查看还有多少秒过期,-1表示永不过期,-2表示已过期

type key 查看你的key是什么类型

一、string 字符串  

String(字符串)
string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。
string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或用者序列化的对象 。
string类型是Redis最基本的数据类型,一个redis中字符串value最多可以是512M

命令:set:设置key-value

        get:获取key的 val

        del: 删除

       append 追加val

      strlen: 判断长度

命令:Incr:数字的递增 decr 数字的递减  incrby 每次按几递增  decrby每次按几递减

命令 getrange  setrange
getrange:获取指定区间范围内的值,类似between......and的关系
从零到负一表示全部
setrange 设置指定区间范围内的值,格式是setrange key值 具体值

 命令  setex(set with expire)键秒值/setnx(set if not exist)


setex:设置带过期时间的key,动态设置。setex 键 秒值 真实值

setnx:只有在 key 不存在时设置 key 的值。

命令mset/mget/msetnx

mset:同时设置一个或多个 key-value 对。

mget:获取所有(一个或多个)给定 key 的值。

msetnx:同时设置一个或多个 key-value 对,当且仅当所有给定 key 都不存在。

命令getset(先get再set)
getset:将给定 key 的值设为 value ,并返回 key 的旧值(old value)。
简单一句话,先get然后立即set

列表(list)

 lpush    rpush     lrange

 lpop     rpop    lindex,按照索引下标获得元素(从上到下)    llen :list长度

 lrem key 删N个value

ltrim key 开始index 结束index,截取指定范围的值后再赋值给key    (ltrim:截取指定索引区间的元素,格式是ltrim list的key 起始索引 结束索引)

 rpoplpush 源列表 目的列表(移除列表的最后一个元素,并将该元素添加到另一个列表并返回)

 lset key index value

 linsert key  before/after 值1 值2 (在list某个已有值的前后再添加具体值)

集合(set)

 sadd 添加set集合    smembers  查看集合元素    sismember查看集合是否存在

 scard 获取集合里面的元素个数

 srem key value  删除集合中元素

 srandmember key 某个整数(随机出几个数)  (

 *   从set集合里面随机取出2个
 *   如果超过最大数量就全部取出,
 *   如果写的值是负数,比如-3 ,表示需要取出3个,但是可能会有重复值。
)

 spop key 随机出栈

 smove key1 key2 在key1里某个值      作用是将key1里的某个值赋给key2

差集:sdiff

交集:sinter

并集:sunion

哈希(Hash)

 hset   设置单个Hash键值  get    获取单个Hash键值    hmset  设置多个Hash键值      hmget 获取多个Hash键值  

 hgetall 获取全部   hlen  hash长度

 hexists key 在key里面的某个值的key

 hkeys   获取hash key    hvals  获取hash value

 hincrby (hash值按几增涨)    hincrbyfloat(按小数:如0.5增涨)

 hsetnx  不存在赋值,存在了无效。

有序集合Zset(sorted set)

 zadd/zrange

 zrangebyscore key 开始score 结束score

 zrevrangebyscore  key 结束score 开始score  (zrevrangebyscore zset1 90 60 withscores    分数是反着来的)

 zrem key 某score下对应的value值,作用是删除元素

 删除元素,格式是zrem zset的key 项的值,项的值可以是多个
 zrem key score某个对应值,可以是多个值

 zcard/zcount key score区间/zrank key values值,作用是获得下标值/zscore key 对应值,获得分数(

zcard :获取集合中元素个数
zcount :获取分数区间内元素个数,zcount key 开始分数区间 结束分数区间
zrank: 获取value在zset中的下标位置
zscore:按照值获得对应的分数

 zrevrank key values值,作用是逆序获得下标值 (正序、逆序获得下标索引值)

 zrevrange   获取逆转结果

                  注意:这只是一些常用命令,其他的大家自行到官方doc学习

redis学习之——五大基本数据类型的更多相关文章

  1. Redis学习笔记--五种数据类型的使用场景

    String 1.String 常用命令: 除了get.set.incr.decr mget等操作外,Redis还提供了下面一些操作: 获取字符串长度 往字符串append内容 设置和获取字符串的某一 ...

  2. Redis学习(4)-数据类型,string,hash

    Redis数据类型: redis使用键值对保存数据 key:全部是字符串 value:五种数据类型:string,hash,List,Set,有序的Set集合. key命名:自定义,名字不要过长,否则 ...

  3. Redis 学习笔记-5种数据类型的基本操作

    1.string类型 基本操作列表: GET 获取指定键对应的值 SET 设定键值 DEL 删除指定键对应的值(对所有数据类型都有效) > set hello world OK > get ...

  4. Redis学习笔记~目录

    回到占占推荐博客索引 百度百科 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合). ...

  5. redis学习(七)——五大数据类型总结:字符串、散列、列表、集合和有序集合

    目录 字符串类型(String) 散列类型(Hash) 列表类型(List) 集合类型(Set) 有序集合类型(SortedSet) 其它命令 一.字符串类型(String) 1.介绍: 字符串类型是 ...

  6. 3 Redis 的常用五大数据类型

    2016-12-21 14:54:20 该系列文章链接NoSQL 数据库简介Redis的安装及及一些杂项基础知识Redis 的常用五大数据类型(key,string,hash,list,set,zse ...

  7. Redis学习笔记(三)Redis支持的5种数据类型的总结

    继续Redis学习笔记(二)来说说剩余的三种数据类型. 三.列表类型(List) 1.介绍 列表类型可以存储一个有序的字符串列表,常用的操作是向列表两端添加元素,或者获得列表的一段片段.列表类型内部是 ...

  8. Redis学习笔记(二)Redis支持的5种数据类型的总结之String和Hash

    引言 在Redis学习笔记(一)中我们已经会安装并且简单使用Redis了,接下来我们一起来学习下Redis支持的5大数据类型. 简介 Redis是REmote DIctionary Server(远程 ...

  9. Redis学习笔记(二) Redis 数据类型

    Redis 支持五种数据类型:string(字符串).list(列表).hash(哈希).set(集合)和 zset(有序集合),接下来我们讲解分别讲解一下这五种类型的的使用. String(字符串) ...

随机推荐

  1. python爬虫分析报告

    在python课上布置的作业,第一次进行爬虫,走了很多弯路,也学习到了很多知识,借此记录. 1. 获取学堂在线合作院校页面 要求: 爬取学堂在线的计算机类课程页面内容. 要求将课程名称.老师.所属学校 ...

  2. 深入理解r2dbc-mysql

    目录 简介 r2dbc-mysql的maven依赖 创建connectionFactory 使用MySqlConnectionFactory创建connection 执行statement 执行事务 ...

  3. C#设计模式——代理模式(Proxy Pattern)

    引言 在我们的生活中,经常会遇到需要什么东西,但是自己又不是很方便或者对方不是很方便,则就需要中间的一个代理人去解决.例如代购.在软件开发中,也会遇到这样的问题.有些对象有时候会由于网络或其他的障碍, ...

  4. python-网络安全编程第十天(web目录扫描&&fake_useragent模块&&optionParser模块)

    前言 昨天的内容没有完成今天花了点时间继续完成了 感觉自己的学习效率太低了!想办法提高学习效率吧 嗯 ,再制定下今天的目标 开始健身. python fake_useragent模块 1.UserAg ...

  5. 企业级工作流解决方案(七)--微服务Tcp消息传输模型之消息编解码

    Tcp消息传输主要参照surging来做的,做了部分裁剪和改动,详细参见:https://github.com/dotnetcore/surging Json-rpc没有定义消息如何传输,因此,Jso ...

  6. python中操作数据库

    python中要操作数据库,要使用该数据库在python中对应的驱动库,本文介绍python操作mysql数据库 1.首先安装pymysql 2.导入库 3.建立连接 4.建立游标 5.发起请求 6. ...

  7. vulnhub: DC 4

    信息收集: yurang@kali:~$ nmap -sn 192.168.76.1/24 Starting Nmap 7.80 ( https://nmap.org ) at 2020-08-04 ...

  8. gitlab 搭建(基于现有nginx)

    普通搭建请看:gitlab 搭建 一.gitlab搭建 1.添加GitLab镜像源并安装gitlab服务器 wget https://mirrors.tuna.tsinghua.edu.cn/gitl ...

  9. javaAgent打包找不到premain类文件解决

    agent 作用和开发 可以用独立于应用程序之外的代理(agent)程序来监测和协助运行在JVM上的应用程序.这种监测和协助包括但不限于获取JVM运行时状态,替换和修改类定义等. 由此可知agent ...

  10. 【P1588】丢失的牛——区间dp/bfs

    (题面来自Luogu) 题目描述 FJ丢失了他的一头牛,他决定追回他的牛.已知FJ和牛在一条直线上,初始位置分别为x和y,假定牛在原地不动.FJ的行走方式很特别:他每一次可以前进一步.后退一步或者直接 ...