IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> redis字符类型-哈希、集合 -> 正文阅读

[大数据]redis字符类型-哈希、集合

redis字符类型-哈希、集合

1.redis字符-哈希

哈希操作命令:

  • hash看起来像一个‘hash’的样子,由键值对组成

  • HMSET指令设置hash中的多个域

  • HGET取回单个域

  • HGETALL取回全部域信息

之前的set和mset只能是单个key的赋值,哈希可以给一个key附多个值

1.1.哈希命令操作举例

1.我们先启动redis服务
[redis_6379]# redis-server /opt/redis_cluster/redis_6379/conf/redis_6379.conf

2.查询服务正常开启后
[root@redis_6379]# ps -ef |grep redis
root       3211      1  0 10:22 ?        00:00:01 redis-server 127.0.0.1:6379
root       3995   3074  0 10:59 pts/1    00:00:00 grep --color=auto redis

3.连接进去redis数据库
[root@redis_6379]# redis-cli -h 192.168.40.1
192.168.40.1:6379>

4.我们插入一组数据,使用hmset命令可以向数据库中插入一组数据和之前的set命令一样。
192.168.40.1:6379> hmset user:10 username zhangsan age 20 job IT
OK

5.我们插入一组数据,这边使用hmget查询,也可以附带多个值
192.168.40.1:6379> hmget user:10 username
1) "zhangsan"

6.根据值查询出对应的信息
192.168.40.1:6379> hmget user:10 username age job
1) "zhangsan"
2) "20"
3) "IT"

7.也可以再次使用hmset命令向后追加字符
192.168.40.1:6379> hmset user:10 qq 123123
OK

8.HGETALL命令可以查询这个序列的所有信息
192.168.40.1:6379> hgetall user:10
1) "username"
2) "zhangsan"
3) "age"
4) "20"
5) "job"
6) "IT"
7) "qq"
8) "123123"

9.同样的redis也是支持存入中文的,只不过存入之后查询会变成编码
192.168.40.1:6379> HMSET user:10 pet 小南
OK
192.168.40.1:6379> hgetall user:10
 1) "username"
 2) "zhangsan"
 3) "age"
 4) "20"
 5) "job"
 6) "IT"
 7) "qq"
 8) "123123"
 9) "pet"
10) "\xe5\xb0\x8f\xe5\x8d\x97\xe2\x80"

10.文件导出之后,内容还是之前输入的中文。
[root@localhost redis_6379]# redis-cli hgetall user:10 > 1.txt
[root@localhost redis_6379]# cat 1.txt 
username
zhangsan
age
20
job
IT
qq
123123
pet
小南

2.redis字符-集合

1.集合使用命令
SADD  创建集合
SMEMBERS  查询某个集合中所有的信息
SDIFF  对比集合内容然后显示出另一个集合没有的数
SINTER  对比出两个或者多个集合中数字相同值
SUNION 将集合中的信息按照顺序列出

2.1.集合命令操作举例

创建两个集合,对其中的key赋值
[root@localhost redis_6379]# redis-cli 
127.0.0.1:6379> SADD set1 1 2 3 5 7
(integer) 5
127.0.0.1:6379> SADD set2 2 5 6  7 10
(integer) 5
使用SMEMBERS查询某个集合所有信息举例
127.0.0.1:6379> SMEMBERS set1 
1) "1"
2) "2"
3) "3"
4) "5"
5) "7"
6) "11"
127.0.0.1:6379> SMEMBERS set2
1) "2"
2) "5"
3) "6"
4) "7"
5) "10"
6) "15"
以集合1或集合2为例,来对比另一个集合key不一样的地方
127.0.0.1:6379> SDIFF set1 set2
1) "1"
2) "3"
3) "11"
127.0.0.1:6379> SDIFF set2 set1
1) "6"
2) "10"
3) "15"
SINTER命令,对比两个key中相同值的数据
127.0.0.1:6379> SINTER set1 set2
1) "2"
2) "5"
3) "7"
SUNION把两个key的数据从大到小列出排序
127.0.0.1:6379> SUNION set1 set2
1) "1"
2) "2"
3) "3"
4) "5"
5) "6"
6) "7"
7) "10"
8) "11"
9) "15"
  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-05-03 09:25:32  更:2022-05-03 09:25:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 1:16:54-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码