回顾:上一基础中已了解 ( 什么是redis 、redis 的三大特点、安装,和数据配置)

   接下来浅尝Redis的数据类型,时间煮雨......

一、Redis数据类型

  redis支持五中数据类型(string字符串、hash哈希、list列表、set集合、zset有序集合)

  (一)String 字符串

    1、string 是redis 中最基本的类型,可以理解成与memcached一模一样的类型,一个key对应一个value

    2、string 类型是二进制安全的,意思是redis 的string可以包含任何数据,比如jop图片或者序列化的对象

    3、sting 类型是redis最基本的数据类型,一个键最大能存储512MB

    实战    

redis 127.0.0.1:6379> set name 'myis lcc'
OK
redis 127.0.0.1:6379> get name
"myis lcc"
redis 127.0.0.1:6379>

  这里用到了redis 的 SET 和 GET命令,键为name,对应的值为 myis lcc

  (二)Hash 哈希

    1、redis hash 是一个键值对集合

    2、redis hash 是一个string类型的 field 和 value 的映射表, hash 特别适合用于储存对象

    (一个键最大储存512MB)

    实战

redis 127.0.0.1:6379> HMSET user:1 username redis password redis points 200
OK
redis 127.0.0.1:6379> HGETALL user:1
1) "username"
2) "redis"
3) "password"
4) "redis"
5) "points"
6) "200"
redis 127.0.0.1:6379>

  

    以上实例中 hash 数据类型储存了包含用户脚本的信息的用户对象,实例中用了 Redis HMSET \ HGETALL命令, user:1为键名

    (每个hash可以储存2的32次方-1键值对(40多亿))

  (三)List 列表

    1、redis 列表是简单的字符串列表,安装顺序排序。可以添加一个元素导入列表的左边(头部) 或者右边(尾部)

    实战      

redis 127.0.0.1:6379> lpush redis.list php
(integer) 1
redis 127.0.0.1:6379> lpush redis.list mysql
(integer) 2
redis 127.0.0.1:6379> rpush redis.list cc
(integer) 3
redis 127.0.0.1:6379> lrange redis.list 0 10
1) "mysql"
2) "php"
3) "cc"
redis 127.0.0.1:6379>

  

    (列表最多可以储存2的32次方-1个元素(4294967295 每个类别可以存40多亿))

  (四)Set 集合

    1、redis 的集合 set 是string 类型的无序集合

    2、集合是通过哈希表实现的,所以添加、删除、查找的复杂度都是O(1)

    3、sadd 命令

       添加一个sting元素到集合中,成功返回1,如果元素已经存在返回 0, key对应的set 不存在发生错误则返回错误

    sadd key member

    实例  

    

redis 127.0.0.1:6379> sadd redis.set mysql
(integer) 1
redis 127.0.0.1:6379> sadd redis.set php
(integer) 1
redis 127.0.0.1:6379> sadd redis.set cc
(integer) 1
redis 127.0.0.1:6379> sadd redis.set mysql
(integer) 0
redis 127.0.0.1:6379> smembers redis.set
1) "php"
2) "cc"
3) "mysql"
redis 127.0.0.1:6379>

  

    注意:以上实例中 mysql 添加了两次,但是根据集合内元素的唯一性,第二次插入的元素会被忽略    

    (集合中最大的成员数位2的32次方-1(4294967295 每个类别可以存40多亿))

  (五)Zset 有序集合

    1、redis zset 和 set 一样也是string 类型的元素集合,且不允许重复成员

    2、不同的是每个元素都会关联一个double类型的分数。redis 正是通过分数来为集合中的成员进行从小到大的排序

    3、zset 的成员是唯一的,但分数(score)却可以重复

    4、zadd 命令

      添加元素到集合,元素在集合中存在则更新score

      zadd key score member

    实战  

    

redis 127.0.0.1:6379> zadd redis.zset.cn 0 php
(integer) 1
redis 127.0.0.1:6379> zadd redis.zset.cn 0 mysql
(integer) 1
redis 127.0.0.1:6379> zadd redis.zset.cn 0 redis
(integer) 1
redis 127.0.0.1:6379> zadd redis.zset.cn 0 redis
(integer) 0
redis 127.0.0.1:6379> ZRANGEBYSCORE redis.zset.cn 0 10
1) "mysql"
2) "php"
3) "redis"
redis 127.0.0.1:6379>

  

   以上就是浅尝Redis 数据类型,接下来进行命令实践

 注明:纯手工码字搬运哟

    

  

  

    

Redis学习基础二的更多相关文章

  1. Redis学习笔记二 (BitMap算法分析与BitCount语法)

    Redis学习笔记二 一.BitMap是什么 就是通过一个bit位来表示某个元素对应的值或者状态,其中的key就是对应元素本身.我们知道8个bit可以组成一个Byte,所以bitmap本身会极大的节省 ...

  2. Redis学习---基础学习[all]

    什么是NoSQL型数据库 NoSQL数据库---NoSQL数据库的分类 Redis学习---NoSQL和SQL的区别及使用场景 Redis学习---负载均衡的原理.分类.实现架构,以及使用场景 什么是 ...

  3. redis 学习(二)-- 通用命令

    redis 学习(二)-- 通用命令 1. keys pattern 含义:查找所有符合给定模式(pattern)的key 命令 含义 keys * 遍历所有 key keys he[h-l]* 遍历 ...

  4. redis学习教程二《四大数据类型》

    redis学习教程二<四大数据类型>  四大数据类型包括:字符串    哈希    列表   集合一 : Redis字符串         Redis字符串命令用于管理Redis中的字符串 ...

  5. redis学习(二) redis数据结构介绍以及常用命令

    redis数据结构介绍 我们已经知道redis是一个基于key-value数据存储的数据结构数据库,这里的key指的是string类型,而对应的value则可以是多样的数据结构.其中包括下面五种类型: ...

  6. C# Redis学习系列二:Redis基本设置

    上一篇:C# Redis学习系列一:Redis的认识.下载.安装.使用 一.redis 设置密码 使用下载好的 redis-cli.exe 指令: 1.设置密码: config set require ...

  7. Redis学习系列二之.Net开发环境搭建及基础数据结构String字符串

    一.简介 Redis有5种基本数据结构,分别是string.list(列表).hash(字典).set(集合).zset(有序集合),这是必须掌握的5种基本数据结构.注意Redis作为一个键值对缓存系 ...

  8. Redis学习-基础环境介绍(二)

    1.通过VMware安装了Centos6.8系统 2.Reids安装过程,需要GCC环境 »通过下面命令,根据提示直接安装 1 yum install gcc 3.Redis选用的是3.2.4(建议使 ...

  9. 【Redis】Redis学习(二) master/slave、sentinel、Cluster简单总结

    项目中用到Redis,所以准备学习一下,感觉Redis的概念还是很多的,什么主从模式.sentinel模式.集群模式的,一下子都晕了,我觉得还是有必要先理清这些基本概念再说. 一.单节点实例 单节点实 ...

随机推荐

  1. sqli-labs学习笔记 DAY4

    DAY 4 sqli-labs lesson 23 与lesson 1一样,只不过屏蔽了#和–注释符. 报错型注入: 爆库:id=99' UNION SELECT 1,extractvalue(1,c ...

  2. Workbook对象的方法总结(一)

    import openpyxlwb=openpyxl.Workbook()print('1.添加前所有工作簿的名称是:',wb.get_sheet_names())wb.create_sheet('F ...

  3. 20172321 2017-2018-2 《Java程序设计》第二周学习总结

    20172321 2017-2018-2 <Java程序设计>第二周学习总结 教材学习内容总结 第一章要点: 要点1 字符串:print和println用法的区别,字符串的拼接,java中 ...

  4. 05慕课网《进击Node.js基础(一)》HTTP概念进阶(同步/异步)

    HTTP模块介绍 支持http协议的更多特性 不缓存请求和响应 API比较底层处理流相关,信息解析 HTTP相关概念 回调 将函数作为参数传到执行函数中,参数函数在执行函数中嵌套执行 function ...

  5. week_2 四则运算

    coding地址: https://git.coding.net/lvgx/week_2.git 一. 需求分析 1.接收一个输入参数n,然后随机产生n道加减乘除(分别使用符号+-*÷来表示)练习题 ...

  6. angularJS1笔记-(19)-angular异步加载包的方式

    我们平时写的导入包的方式都是同步方式,有时候会显得过于卡顿,这样我们就可以使用异步加载的方式. script.js方式: 执行结果为: 异步加载还可以加载多个即为script([,,,],functi ...

  7. 课堂alpha发布

    项目组名:奋斗吧兄弟 今天七组对于各自项目现有的成果进行了alpha发布,下面是我的一些感想. 天天向上团队的连连看游戏: 令我印象最深的是天天向上团队的连连看项目,他们目前能展示给我们的是核心的连连 ...

  8. 如何修改eclipse下注释的颜色

    修改注释颜色:window -- preferences -- java --editor --syntax coloring -- comments 中的前两个就是修改注释颜色的.点击右边的colo ...

  9. requests爬取知乎话题和子话题

    zhihu.py # *_*coding:utf-8 *_* import pymysql import requests from lxml import etree from requests_t ...

  10. [转帖]HTTPS系列干货(一):HTTPS 原理详解

    HTTPS系列干货(一):HTTPS 原理详解 https://tech.upyun.com/article/192/HTTPS%E7%B3%BB%E5%88%97%E5%B9%B2%E8%B4%A7 ...