redis字符类型-哈希、集合
1.redis字符-哈希
哈希操作命令:
之前的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"
|