【redis数据库】基础入门,五种类型增删改查

目录

1.redis的启动

2.redis基本操作

3.redis的数据类型

4.字符串操作

添加修改值

获取值

5.键相关操作

查找键

判断键是否存在

查看键对应的值类型

设置已有键的过期时间

查看键过期时间

6.哈希操作

添加值

添加多个值

获取字段

获取字段对应的值

获取多个字段的值

获取所有字段的值

获取所有字段名包括值

删除字段

删除键

7.列表list

添加值

插入值

获取值

修改值

删除值

8.集合

添加值

获取值

删除值

9.有序集合

添加值

获取值

通过score获取值

通过值得到score

删除值

通过score删除值


1.redis的启动

  • 服务端启动

    • redis-server

  • 客户端启动

    • redis-cli

    • redis-cli --raw

      • 支持中文的启动方式

2.redis基本操作

  • ping

    • 测试与redis服务器是否联通

  • select

    • 选择数据库,redis有从0到15,16个数据库

    • select 3 选择3号数据库

    • select 0 选择0号数据库

    • 登录到redis客户端,如果没有做任何select操作,默认选择的是0号数据库

3.redis的数据类型

  • redis保存的数据都是按照键值对来保存

  • 键(key)

  • 值(value)

  • 键的数据类型都是字符串

  • 值的数据类型有以下五种

    • 字符串(string)

    • 哈希(hash)

    • 列表(list)

    • 无序集合(set)

    • 有序集合(zset)

4.字符串操作

添加修改值

  • set 键 值

    • 如果键不存在,就是添加

    • 如果键存在,就是修改

set user1 aaa
# 添加一个键user1 值为aaa
set user1 bbb
# 把键user1 的值修改为bbb
  • setex 键 过期时间 值

    • 过期时间单位为秒

 setex user2 3 bbb
 # 添加一个键user2 值为bbb,过期时间为3秒
  • 添加多个键值对

    • mset 键1 值1 键2 值2 .........

 mset use3 ccc user4 ddd user5 eee
 # 同时添加3个键值对
  • 已有值后面追加

    • append 键 值

 append haha
 #键user1的值后面追加内容哈哈

获取值

  • get 键

 get user1
 # 获取user1对应的值
  • mget获取多个值

 mget user1 user4 user5
 # 一次获取多个值
  • 删除值

    • del 键1 键2 键n.....

 del user1 user2
 # 同时删除user1和user2两个键和键对应的值

5.键相关操作

查找键

  • keys 键名

  • 可以支持*

 keys user1
 # 查找键user1是否存在
 keys *
 # 显示所有的键

判断键是否存在

  • exists 键名

    • 如果键存在,返回1

    • 不存在,返回0

 exists user1
 # 判断user1是否存在

查看键对应的值类型

  • type 键

 type user2
 # 查看user2对应的值的类型

设置已有键的过期时间

  • expire 键 秒数

 expire user2 100
 # 设置user2 的过期时间为100秒

查看键过期时间

  • ttl 键

    • -1永远有效

    • 大于0,剩余有效时间,单位秒

    • -2,键不存在

6.哈希操作

添加值

  • hset 键 字段 值

 hset huser1 name tom
 # 增加一个hash类型的键值对,字段为name,值为tom

添加多个值

  • hmset 值 字段1 值1 字段2 值2.......

 hmset huser2 name mary sex female
 # 添加一个huser2键,字段有两个

获取字段

  • hkeys 键

    • 获取指定键的所有字段名

 hkeys huser2
 # 获取键huser2所有的字段

获取字段对应的值

  • hget 键 字段

 hget huser2 name
 # 获取键huser2,字段name的值

获取多个字段的值

  • hmget 键 字段1 字段2.......

 hmget huser2 name sex
 # 获取huser2name和sex字段的值

获取所有字段的值

  • hvals 键

 hvals huser2
 # 获取huser2所有字段的值

获取所有字段名包括值

  • hgetall 键

 hgetall huser1
 # 获取huser1所有的字段名和值

删除字段

  • hdel 键 字段名

 hdel huser2 sex
 # 把键huser2 的字段sex删除

删除键

  • del 键

7.列表list

添加值

  • lpush 键 值1 值2 .....

    • 从列表左侧添加值

 lpush luser1 aa
 # 新建一个键luser1,左侧添加值aa
  • rpush 键 值1 值2......

    • 从列表右侧添加值

 rpush luser1 bb cc dd
 # 从列表右侧添加三个值bb cc dd

插入值

  • linsert 键 before或者after 值 新值

    • 在指定的值前面或者后面插入新值

 linsert luser1 before cc 11
 # 在cc前面插入新值11
 linsert luser1 after cc 22
 # 在cc后面插入新值22

获取值

  • lrange 键 start stop

    • start代表开始索引

    • stop结束索引

    • 第一个值的索引为0,最后一个值的索引为-1

 lrange luser1 0 -1
 # 获取列表所有值
 lrange luser1 2 -1
 # 从第三个元素开始获取到最后的值

修改值

  • lset 键 索引 值

    • 修改指定索引的值

 lset luser1 1 china
 # 把第二个元素的值改为china

删除值

  • lrem 键 count 值

    • count = 0 删除指定的所有值

    • count < 0,代表从右往左删除指定数量的值

    • count >0,代表从左往右删除指定数量的值

 lrem luser2 -1 h0
 # 从后往前,从右往左,删除一个h0
 lrem luser2 0 h0
 # 删除所有的h0

8.集合

添加值

  • sadd 键 值1 值2 值3.......

    • 集合添加值

 sadd suser1 aa bb cc 
 # 添加三个值

获取值

  • smembers 键

    • 获取集合的值

 smembers suser1
 # 获取键suser1所有的值

删除值

  • srem 键 值

    • 删除指定的值

 srem suser1 cc
 # 删除键user1的值cc

9.有序集合

添加值

  • zadd 键 score1 值1 score2 值2.

    • 添加值

 zadd zuser1 1 aa 3 dd 5 ee 2 cc
 # 添加三个值,score分别为1,3,5,2
 # 添加的值会按照score从小到大排序

获取值

  • zrange 键 start stop [withscores]

    • start从0开始

    • 最后一个索引为-1

    • withscores代表同时获取score

 zrange zuser1 0 -1 withscores
 # 获取zuser1所有的值和score

通过score获取值

  • zrangebyscore 键 min max

    • min代表score的起始值

    • max代表score的结束值

 zrangebyscore zuser1 2 6
 # 获取score从2到6之间的值

通过值得到score

  • zscore 键 值

    • 得到指定值的score

 zscore zuser1 dd
 # 得到值dd的score

删除值

  • zrem 键 值

    • 删除指定的值

 zrem zuser1 dd
 # 删除值dd

通过score删除值

  • zremrangebyscore 键 min max

    • min是要删除score的最小值

    • max是要删除score的最大值

 zremrangebyscore zuser1 0 10
 # score从0到10之间的值都删除

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值