【Redis】Redis的常规操作命令

NoSQL是一种非关系型数据库,非关系型数据库库和传统的关系型数据库不同,非关系性体现在不需要依赖表进行数据存储。常见的非关系型数据库有Redis、MonoDB、HBase等,这些是基于key-value进行数据存储,采用命令操作。关系型数据库的关系体现在对操作表上面,比如Oracle,MySQL、SQLServer,采用SQL操作。

Redis是非关系型数据库的一种,它有如下特点:

  • 采用C语言编写,基于内存操作,被称为内存数据库。
  • 存储的数据结构是key-value,value值可以为字符串、哈希、列表、集合、有序结构。
  • Redis的存储数据异常快。
  • Redis支持持久化操作,将内存数据同步过数据文件中。
  • Redis还提供了事务、消息传递的功能。

下面介绍一些Redis的常规操作命令:

管理Redis键命令:

DEL key  此命令删除键,如果存在
EXISTS key  此命令检查该键是否存在
EXPIRE key seconds  指定键的过期时间
PEXPIRE key milliseconds  设置键以毫秒为单位到期
PERSIST key  移除过期的键
KEYS pattern  查找与指定模式匹配的所有键(KEYS * 用于查看所有的key)
DUMP key  该命令返回存储在指定键的值的序列化结果
RANDOMKEY  从Redis返回随机键
RENAME key newkey  更改键的名称
TYPE key  返回存储在键的数据类型的值
PTTL key  以毫秒为单位获取剩余时间的到期键
TTL key  获取键到期的剩余时间

字符串操作命令:

SET key value  此命令用于在指定键设置值
GET key  键对应的值
GETSET key value  设置键的字符串值,并返回旧值
STRLEN key  得到存储在键的值的长度
MSET key value [key value ...]  设置多个键和多个值
INCR key  键的整数值加1
INCRBY key value  键的整数值加value
DECR key  键的整数值减1
DECRBY key value  键的整数值减value
APPEND key value  为原来键值追加value

哈希操作命令:

HMSET key field1 value1 [field2 value2 ] 设置多个哈希字段的多个值
HSET key field value  设置哈希字段的字符串值
HGET key field  获取存储在指定的键散列字段的值
HMGET key field1 [field2]  获得所有给定的哈希字段的值
HLEN key  获取哈希表中的长度
HKEYS key  获取所有哈希表中的字段
HDEL key field2 [field2]  删除一个或多个哈希字段
HEXISTS key field  判断一个哈希字段存在与否

列表操作命令:

LPUSH key value1 [value2]  在前面加上一个或多个值的列表
RPUSH key value1 [value2]  在末尾加上一个或多个值的列表
LRANGE key start stop  返回存储在key列表的特定元素,0是第一元素(该列表的头部),1是列表的下一个元素, -1是该列表的最后一个元素,-2倒数第二个
LLEN key  获取列表的长度
LPOP key  从头部删除一个元素,并返回该删除的元素
RPOP key  从尾部删除一个元素,并返回该删除的元素
LTRIM key begin end  对列表元素剪切,保留指定key范围内的数据
LINDEX key index  从一个列表其索引获取对应的元素
LPUSHX key value  在前面加上一个值列表,仅当列表中存在,不成功返回0
RPUSHX key value  在末尾加上一个值列表,仅当列表中存在,不成功返回0
LREM key count value  移除等于value的元素,当count>0时,从表头开始查找,移除count个;当count=0时,从表头开始查找,移除所有等于value的;当count<0时,从表尾开始查找,移除|count| 个
LINSERT key before|after pivot value 将值插入到pivot的前面或后面。如果有多个pivot,以离表头最近的为准
LSET key index value  设置列表指定索引的值,如果索引不存在则报错

集合操作命令:

SADD key member [member ...] 向集合增加元素
SREM key member [member ...] 从集合删除元素
SMEMBERS key  获得集合中的所有元素
SISMEMBER key member  判断元素是否在集合中
SCARD key  获得集合中元素的个数
SRANDMEMBE key [count]  随机获得集合中的元素
SPOP key  从列表中弹出一个元素,弹出元素被删除,不在原来的集合中
SDIFF key [key ...]  执行差集运算。集合A与集合B的差值表示为A-B
SINTER key [key ...]  执行交集运算。集合A与集合B的交集表示为A∩B
SUNION key [key ...]  执行并集运算。集合A与集合B的并集
SMOVE key1 key2 value  将第一个集合元素value移动到第二个集合中
SDIFFSTORE key key1 key2  执行差集运算并且存储到另一个set中
SINTERSTORE key key1 key2  执行交集运算并且存储到另一个set中
SUNIONSTORE key key1 key2  执行并集运算并且存储到另一个set中

有序集合操作命令:

ZADD key score1 member1 [score2 member2] 向有序集合添加一个或多个成员,或者更新已存在成员的分数
ZCARD key  获取有序集合的成员数
ZCOUNT key min max  计算在有序集合中指定区间分数的成员数
ZSCORE key member  获得元素的分数
ZRANGE key start stop [WITHSCORES] 通过索引区间返回有序集合成指定区间内的成员(小到大)
ZREVRANGE key start stop [WITHSCORES] 通过索引区间返回有序集合成指定区间内的成员(大到小)
ZRANGEBYSCORE key score1 score2 根据排序索引的scores来返回元素
ZRANK key member  返回元素在集合中的排序位置,就是索引值
ZREVRANK key member  返回有序集合中指定成员的排名,有序集成员按分数值递减(从大到小)排序
ZREM key member  删除名称为key的zset中的元素member
ZINCRBY key number member 可以增加一个元素的分数,返回值是更改后的分数
ZREMRANGEBYRANK key start stop 按照元素分数从小到大顺序删除指定范围内所有的元素
ZREMRANGEBYSCORE key min max 删除集合中在给定排序区间的元素 (按score删除)

时间: 2024-08-05 14:59:58

【Redis】Redis的常规操作命令的相关文章

Nginx Redis redis分片 redis哨兵 redis集群 等 常用命令

Nginx  Redis  redis分片  redis哨兵  redis集群 等 常用命令 1.1.1 Nginx命令 前提:nginx的命令执行,必须在nginx的根目录中完成 命令: 1.启动nginx     start nginx 2.重启nginx     nginx -s reload 3.关闭nginx     nginx -s stop Linux命令 1.1.2 cd命令集 ifconfig  检查IP地址 cd命令是linux中最基本的命令语句,必须熟练掌握 cd / 返回

[Redis]Redis入门笔记

一.Redis安装 Linux, MacOS系统安装 1. 下载Redis http://download.redis.io/releases/ 2. 解压压缩包,在目录中执行make命令进行源码编译 make 3. 安装redis服务 sudo make install 4. 新建配置文件redis.conf 参考源码中的redis.conf配置文件进行配置,修改daemonize(yes 后台运行) port(端口号 6379) 二.Redis服务启动 redis-server --help

[redis] redis配置文件redis.conf的详细说明

1 # Redis 配置文件 2 3 # 当配置中需要配置内存大小时,可以使用 1k, 5GB, 4M 等类似的格式,其转换方式如下(不区分大小写) 4 # 5 # 1k => 6 1000 bytes 7 # 1kb => 1024 bytes 8 # 1m => 1000000 bytes 9 # 1mb => 10 1024*1024 bytes 11 # 1g => 1000000000 bytes 12 # 1gb => 1024*1024*1024 13 b

ServiceStack.Redis——Redis在.net上的客户端解决方案

ServiceStack.Redis--Redis在.net上的客户端解决方案 源码及使用: https://github.com/ServiceStack/ServiceStack.Redis 例子: https://github.com/ServiceStack/ServiceStack.Examples/tree/master/src/RedisStackOverflow 上面的例子中container.Register<IRedisClientsManager>(c => new

redis.Redis与redis.StrictRedis区别

redis-py提供两个类Redis和StrictRedis用于实现Redis的命令,StrictRedis用于实现大部分官方的命令,并使用官方的语法和命令(比如,SET命令对应与StrictRedis.set方法).Redis是StrictRedis的子类,用于向后兼容旧版本的redis-py. 简单说,官方推荐使用StrictRedis方法. 不推荐Redis类,原因是他和咱们在redis-cli操作有些不一样,主要不一样是下面这三个方面. ·LREM:参数 'num' 和 'value' 

redis的数据结构及操作命令

一.字符串: redis中最为基础的存储类型,以二进制存储,value的字符串最多512M,Key做多1024字节. 常用命令:赋值(set).取值(get).删除(del),递增(incr/incrby keyname 5).递减(decr/decrby keyname 5).追加(append返回值是长度). 二.哈希 可以看作是一个String的key和String的value的map容器.非常适合存储对象的属性. 常用的命令:赋值(hset eg : hset myhash name n

Redis字符串类型相关操作命令

string是redis最基本的类型,可以包括任何类型数据,如jpg图片或者序列化对象. 单个value1最大上限是1G字节 如果只使用string类型,redis就可以被看做具有持久化特性的memcache set key value [ex 过期时间秒数]|[px 过期时间毫秒数] [nx]|[xx] 设置一个key的值,默认value的类型为stringex,px过期时间,如果同时设置以后面的为准,如set name zhangsan ex 10 px 3000,则以后面的时间为准即3秒n

Redis对于key的操作命令

del key1 key2 ... Keyn 作用: 删除1个或多个键 返回值: 不存在的key忽略掉,返回真正删除的key的数量 rename key newkey 作用: 给key赋一个新的key名 注:如果newkey已存在,则newkey的原值被覆盖 renamenx key newkey 作用: 把key改名为newkey 返回: 发生修改返回1,未发生修改返回0 注: nx--> not exists, 即, newkey不存在时,作改名动作 move key db redis 12

Redis五(其他操作命令)

其他常用操作 delete(*names) # 根据删除redis中的任意数据类型 exists(name) # 检测redis的name是否存在 keys(pattern='*') # 根据模型获取redis的name # 更多: # KEYS * 匹配数据库中所有 key . # KEYS h?llo 匹配 hello , hallo 和 hxllo 等. # KEYS h*llo 匹配 hllo 和 heeeeello 等. # KEYS h[ae]llo 匹配 hello 和 hallo