前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C# CsRedis的初探(二)-- Redis常用命令整理(基本篇)

C# CsRedis的初探(二)-- Redis常用命令整理(基本篇)

作者头像
Vaccae
发布2019-07-24 13:20:20
2.4K0
发布2019-07-24 13:20:20
举报
文章被收录于专栏:微卡智享微卡智享

Redis常用命令基本篇

keys 命令

? 匹配一个字符

KEYS h?llo 匹配 hello , hallo 和 hxllo 等。

* 匹配任意个(包括0个)字符

KEYS h*llo 匹配 hllo 和 heeeeello 等。

[] 匹配括号间的任一个字符,可以使用 "-" 符号表示一个范围,如 a[b-d] 可以匹配 "ab","ac","ad"

KEYS h[ae]llo 匹配 hello 和 hallo ,但不匹配 hillo 。

\x 匹配字符x,用于转义符号,如果要匹配 "?" 就需要使用 \?


判断一个键值是否存在

exists key

如果存在,返回整数类型 1 ,否则返回 0


删除键

del key [key.....]

可以删除一个或多个键,返回值是删除的键的个数

注意:不支持通配符删除


获得键值的数据类型

type key

返回值可能是 string(字符串类型) hash(散列类型) list(列表类型) set(集合类型) zset(有序集合类型)


赋值与取值

set key value 赋值

  • EX second :设置键的过期时间为 second 秒。 SET key value EX second 效果等同于 SETEX key second value 。
  • PX millisecond :设置键的过期时间为 millisecond 毫秒。 SET key value PX millisecond 效果等同于 PSETEX key millisecond value 。
  • NX :只在键不存在时,才对键进行设置操作。 SET key value NX 效果等同于 SETNX key value 。
  • XX :只在键已经存在时,才对键进行设置操作。

get key 取值

  • 当 key 不存在时,返回 nil ,否则,返回 key 的值。 如果 key 不是字符串类型,那么返回一个错误。

递增数字

incr key

当存储的字符串是整数形式时,redis提供了一个使用的命令 incr 作用是让当前的键值递增,并返回递增后的值

当要操作的键不存在时会默认键值为 0 ,所以第一次递增后的结果是 1 ,当键值不是整数时 redis会提示错误


增加指定的整数

incrby key increment

incrby 命令与 incr 命令基本一样,只不过前者可以通过 increment 参数指定一次增加的数值如:

incrby num 2

incrby num 3


减少指定的整数

decr key

decrby key increment

desc 命令与incr 命令用法相同,只不过是让键值递减

decrby 命令与 incrby命令用法相同


增加指定浮点数

incrbyfloat key increment

incrbyfloat 命令类似 incrby 命令,差别是前者可以递增一个双精度浮点数,如:

incrbyfloat num 2.7


向尾部追加值

append key value

作用是向键值的末尾追加 value ,如果键不存在则将改键的值设置为 value,即相当于 set key value。返回值是追加后字符串的长度

如:append foo " hello word!"


获取字符串长度

strlen key

返回键值的长度,如果键不存在则返回0


同时 获得/设置 多个键值

mget key [key.....]

如果给定的 key 里面,有某个 key 不存在,那么这个 key 返回特殊值 nil 。因此,该命令永不失败。

mset key value [key value .......]

如果某个给定 key 已经存在,那么 MSET 会用新值覆盖原来的旧值,如果这不是你所希望的效果,请考虑使用 MSETNX 命令:它只会在所有给定 key 都不存在的情况下进行设置操作。


位操作

一个字节由8个二进制位组成,redis 提供了4个命令直接对二进制位进行操作

getbit key offset

getbit 命令可以获得一个字符串类型键指定位置的二进制位的值(0 或 1),索引从 0 开始,如果需要获取的二进制位的索引超出了键值的二进制位的实际长度则默认位值是 0

setbit key offset value

setbit 命令可以设置字符串类型键指定位置的二进制位的值,返回值是该位置的旧值,如果需要设置的位置超过了键值的二进制位的长度,setbit 命令会自动将中间的二进制位设置为0,同理设置一个不存在的键的指定二进制位的值会自动将其前面的位赋值为 0

bitcount key [strart] [end]

bitcount 命令可以获得字符串类型键中值是1的二进制位个数,可以通过参数来限制统计的字节范围,如我们希望统计前两个字节(即"aa") 命令:bitcount foo 0 1

bitop operation destkey key [key .....]

bittop 命令可以对多个字符串类型键进行位运算,并将结果存储在destkey参数指定的键中。该命令支持的运算操作有 AND、 OR、XOR、 NOT,

如我们对bar 和 aar 进行 OR 运算操作:

set foo1 bar

set foo2 aar

bitop OR res foo1 foo2

get res


-END-

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-12-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 微卡智享 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 Redis
腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档