Redis字符串类型操作

默认数据库

默认情况下Redis给我们创建了16个数据库(0~15),如果使用的时候没有明确的选中使用哪个数据库, 那么默认使用第0个

🐤切换数据库

select 1

字符串类型

🥣新增

  • 语法: set key value
set name BNTang

🥞查询

  • 语法: get key
get name

🍞修改

  • 语法: set key value
  • 如果key已经存在就是修改
set name JonathanTang

🍲删除

  • 语法: del key
del name

字符串类型高级操作

  • 语法: set key value
  • 不管key是否存在都设置(不存在就新增,存在就覆盖)

🍺setnx key value

  • 语法: setnx key value
  • 只有key不存在才设置(新增)
setnx name BNTang

🥛set key value xx

  • 语法: set key value xx
  • 只有key存在才设置(更新)
set name JonathanTang xx

字符串类型批量处理

🌭批量添加值

  • 语法: mset key value key value
mset name BNTang age 19 score 100

🍳批量查询值

  • 语法: mget key key key
mget name age score

字符串类型其它操作

  • 设置新值返回旧值
  • 语法: getset key newValue
getset name JonathanTang
  • 给旧值追加数据
  • 语法: append key value
append name 666
  • 计算value字符串长度,如果存储的中文就要看使用的字符集编码来算了例如GBK,UTF8
  • 语法: strlen key
strlen name
  • 获取指定下标范围的值
  • 语法: getrange key start end
getrange name 0 11
  • 从指定下标开始设置字符串的值
  • 语法: setrange key offset value
setrange name 11 777

字符串类型自增自减操作

🧇incr

  • 给指定key对应的Value自增1, 如果key不存在会自动创建新增, 并从0开始自增1
  • 格式: incr key
set num 1
incr num

🥪decr

  • 给指定key对应的Value自减1, 如果key不存在会自动创建自减, 并从0开始自减1
  • 格式: decr key
decr num

🐤incrby

  • 给指定key对应的Value增加指定值, 如果key不存在会自动新增, 并从0开始增加
  • 格式: incrby key number
incrby num 9

🐥decrby

  • 给指定key对应的Value减少指定的值, 如果key不存在会自动新增, 并从0开始减少
  • 格式: decrby key number
decrby num 9

🐸incrbyfloat

  • 给指定key对应的Value增加指定值, 如果key不存在会自动新增, 并从0开始增加
  • 格式: incrbyfloat key float
set score 1.0

小数的添加

incrbyfloat score 7.5

小数的减少

incrbyfloat score -7.5

通用命令

  • 查询当前数据库中所有的key
keys *
  • 清空当前数据库(开发操作)
flushdb
  • 清空所有数据库(离职操作)
flushall

🐤由于Redis是单线程的, 而以上操作都是非常耗时的, 所以不推荐在企业开发中使用

  • 计算当前数据库key的总数
dbsize

🐸dbsize并不是通过遍历统计得到当前数据库key的总数, 而是每次操作时内部会自动统计, 所以dbsize并不是一个耗时的操作, 我们可以在企业开发中大胆的使用

  • 查看value数据类型
  • 格式: type key
type name
  • 判断指定key是否存在, 如果存在返回1, 如果不存在返回0
  • 格式: exists key
exists name
  • 设置key过期时间, 如果没有添加过期时间就是添加, 如果已经添加过了过期时间就是修改过期时间
  • 格式: expire key seconds
expire name 3
  • 查看key过期时间
  • 格式: ttl key
ttl age
  • 取消key过期时间, 如果key不存在或者已经被删除会返回-2, 如果key存在并且过期时间已经被删除会返回-1
  • 格式: persist key
persist score

参考资料

http://redisdoc.com/

posted @ 2020-08-06 21:58  BNTang  阅读(144)  评论(0编辑  收藏  举报