Redis数据类型及基本命令
一、基础命令
提示:Redis不区分命令大小写
1.获得符合规则的键名列表
keys pattern //pattern支持glob风格通配符格式
2.判断一个键是否存在
exists key //如果键存在则返回整数类型1,否则返回0
3.删除键
del key [key …] //可以删除一个或多个键,返回值是删除的键的个数。
注意:DEL 命令的参数不支持通配符,但可以执行redis-cli DEL 'redis-cli KEYS "user:*"'来达到效果
4.获得键值的数据类型
type key
二、数据类型
五种数据类型:string(字符串类型)、hash(散列类型)、list(列表类型)、set(集合类型)、zset(有序集合类型);另外,包括 2.8.9 版本添加了 HyperLogLog 结构;
1.字符串类型
//赋值与取值
set key value
get key
//递增数字
incr key
//增加指定的整数
incrby key increment
//减少指定的整数
decr key
decrby key decrement
//增加指定浮点数
incrbyfloat key increment
//向尾部追加值
append key value
//获取字符串长度
strlen key
//同时获得/设置多个键值
mget key [key …]
mset key value [key value …]
//位操作
getbit key offset
setbit key offset value
//获得字符串类型键中值是1的二进制位个数
bitcount key [start] [end]
//位运算
bitop operation{OR | AND | XOR | NOT} destkey key [key …]
2.散列类型(hash)
//赋值与取值
hset key field value
hget key field
hmset key field value [field value …]
hmget key field [field …]
hgetall key
hexists key field
hincrby key field increment
hdel key field [field …]
hkeys key
hvals key
hlen key
3.列表类型
lpush key value [value …] //增加
rpush key value [value …]
lpop key //弹出
rpop key
llen key
lrange key start stop
lrem key count{>0 | =0 | <0} value
//获得/设置指定索引的元素值
lindex key index
lset key index value
//只保留列表指定片段
ltrim key start end
linsert key BEFORE|AFTER pivot value
//将元素从一个列表转到另一个列表
rpoplpush source destination
4.集合类型
sadd key member [member …]
srem key member [member …]
smembers key
sismember key member
//集合间运算
sdiff key [key …] A - B
sinter key [key …] 交集
sunion key [key …] 并集
//获得集合中的元素个数
scard key
//进行集合运算并将结果存储
sdiffstore destination key [key …]
sinterstore destination key [key …]
sunionstore destination key [key …]
//随机获得集合中的元素
srandmember key [count]
//从集合中弹出一个元素
spop key
5.有序集合类型
zadd key score member [score member …]
//获得元素的分数
zscore key member
//获得排名在某个范围的元素列表
zrange key start stop [WITHSCORES {连分数一起显示}]
zrevrange key start stop [WITHSCORES]
//获得指定分数范围的元素
zrangebyscore key min max [WITHSCORES] [LIMIT offset count]
zincrby key increment member
//获得集合中元素的数量
zcard key
//获得指定分数范围內的元素个数
zcount key min max
zrem key member [member …]
zremrangebyrank key start stop
zremrangebyscore key min max
zrank key member //获得元素的排名
zrevrank key member //反
//计算有序集合的交集
zinterstore destination numkeys key [key …] [WEIGHTS weight [weight …]]
[AGREGATE SUM|MIN|MAX]
6.HyperLogLog
在 2.8.9 版本添加了 HyperLogLog 结构,用做基数统计的算法,HyperLogLog 的优点是,在输入元素的数量或者体积非常非常大时,计算基数所需的空间总是固定的、并且是很小的;
基数?
比如数据集 {1, 3, 5, 7, 5, 7, 8}, 那么这个数据集的基数集为 {1, 3, 5 ,7, 8}, 基数(不重复元素)为5。 基数估计就是在误差可接受的范围内,快速计算基数。
//添加指定元素
pfadd key element [element ...]
//返回基数估算值
pfcount key [key ...]
//将多个 HyperLogLog 合并为一个 HyperLogLog
pfmerge destkey sourcekey [sourcekey ...]
http://www.runoob.com/redis/redis-tutorial.html
Redis数据类型及基本命令的更多相关文章
- redis教程(一)-----redis数据类型、基本命令、发布订阅以及持久化
简介 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis的开发工作由VMwa ...
- 初识redis数据类型
初识redis数据类型 1.String(字符串) string是redis最基本的类型,一个key对应一个value. string类型是二进制安全的.意思是redis的string可以包含任何数据 ...
- redis数据类型及使用场景
Redis数据类型 String: Strings 数据结构是简单的key-value类型,value其实不仅是String,也可以是数字. 常用命令: set,get,decr,incr,mge ...
- Redis数据类型介绍
Redis 数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). String(字符串) st ...
- redis数据类型
Redis 数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). String(字符串) st ...
- Redis-cluster集群【第一篇】:redis安装及redis数据类型
Redis介绍: 一.介绍 redis 是一个开源的.使用C语言编写的.支持网络交互的.可以基于内存也可以持久化的Key-Value数据库. redis的源码非常简单,只要有时间看看谭浩强的C语言,在 ...
- Lua 数据类型和 Redis 数据类型之间转换
当 Lua 通过 call() 或 pcall() 函数执行 Redis 命令的时候,命令的返回值会被转换成 Lua 数据结构. 同样地,当 Lua 脚本在 Redis 内置的解释器里运行时,Lua ...
- redis数据类型-散列类型
Redis数据类型 散列类型 Redis是采用字典结构以键值对的形式存储数据的,而散列类型(hash)的键值也是一种字典结构,其存储了字段(field)和字段值的映射,但字段值只能是字符串,不支持其他 ...
- redis数据类型-字符串类型
Redis数据类型 字符串类型 字符串类型是Redis中最基本的数据类型,它能存储任何形式的字符串,包括二进制数据.你可以用其存储用户的邮箱.JSON化的对象甚至是一张图片.一个字符串类型键允许存储的 ...
随机推荐
- ArrayList,Vector ,LinkedList的存储性能和特性
ArrayList,Vector,LinkedList : 两者都采用数组元素方式存储数据,此数组元素数大于实际存储的数据(以便于增加和插入元素),允许直接按照序号索引元素,但是插入元素涉及数组元素移 ...
- Intellij Idea Spring Boot 热部署
1. POM 文件添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifac ...
- LBS 基于位置的服务
LBS (Location Based Services)基于位置的服务 基于位置的服务,它是通过电信移动运营商的无线电通讯网络(如GSM网.CDMA网)或外部定位方式(如GPS)获取移动终端用户的位 ...
- Mongodb分片副本集集群搭建
一.环境准备 1.1.主机信息(机器配置要求见硬件及开发标准规范文档V1.0) 序号 主机名 IP 1 DB_01 10.202.105.52 2 DB_02 10.202.105.53 3 DB_0 ...
- Yii2.0简单隐藏index.php文件和模块配置和layout布局配置禁用和日志写入配置
隐藏index.php文件 目的:想去掉浏览器地址栏中的 index.php?r= 这一块. 在/config/web.php中 ’components'=>[] 中添加如下代码: 'u ...
- kubernetes配置dashborad,web界面
一,将kubernetes-dashboard.yaml-1.10和admin-rbac.yaml和token.sh的上传到k8s的计算机上 .如图 二,切入到这三个文件所在的目录下,执行命令:kub ...
- leetcode-mid-sorting and searching-162. Find Peak Element
mycode 54.81% class Solution(object): def findPeakElement(self, nums): """ :type num ...
- Python学习之==>模块结构调整
一.为什么要进行模块结构调整 当一个脚本中有大量的配置.方法及接口时,脚本显得十分臃肿,可读性很差.为了提高代码的易读性,可以将一个繁杂的脚本根据不同的功能放在不同的目录下分类管理,这整个过程叫做模块 ...
- JDK7新特性
二进制字面量 数字字面量可以出现下划线 switch语句可以用字符串 泛型简化 异常的多个catch合并 try..with...resource语句 import java.io.FileReade ...
- MySQL5.6版本之后设置DATETIME类型自动更新
在使用MySQL中datetime格式自动更新特性时,我们应该明确一点,datetime格式设置默认值为当前时间和自动更新时间是从MySQL5.6版本之后开始支持的.此前我们都是使用timestamp ...