redis数据库各种数据类型的增删改查命令
redis的常用数据操作:
redis是key-value的数据结构,每条数据都是一个键值对。
键的类型是字符串并且键不能重复。
redis最基本数据类型是string 所以下面的操作可以省略引号"" 编译器能够当作字符串来识别我们的命令 值的类型分为五种:
1 字符串string
2 哈希hash
3 列表list
4 集合set
5 有序集合zset string类型命令:
1 增加、修改: 如果设置的键不存在则添加,如果存在则修改
1.1 设置键值
set key value 例如: 添加键py1 值为gj
set "py1" "gj" 1.2 设置键值及过期时间:以秒为单位,过期后数据自动删除
setex key seconds value 例如:设置键py2 的值为hr 3秒后过期
setex "py2" 3 "hr" 1.3 设置多个键值:
mset key1 value1 key2 value2 .... 例如:设置键py3值为dx 键py4值为xd 键py5值为nd 键py6值为bg
mset "py3" "dx" "py4" "xd" "py5" "nd" "py6" "bg" 1.4 追加值: 在值后追加字符串
append key value 例如:向键py1 追加haha
append "py1" "haha" 2 获取:
2.1 根据键获取值,如果不存在返回null
get key 例如:获取py1的值
get "py1" 2.2 根据多个键,获取多个值
mget key1 key2 key3 ... 例如:获取py3 py4 py5 py6 的值
mget "py3" "py4" "py5" "py6" 3 删除:删除键的时候会删除值
del key1 key2 key3 ... 键命令:
1 查找键,参数通配符查找
keys patern 例如:查看所有的键
keys *
例如:查看所有包含a的键
keys "*a*" 2 判断键是否存在,存在返回1 否则返回0
exists key 例如: 判断py1键是否存在
exists "py1" 3 查看键对应的value的类型
type key 例如:查看py1的值的类型
type "py1" 4 删除键对应的值
del key1 key2 .... 例如:删除键'py3'、'py4'、'py5'、'py6'
del 'py3' 'py4' 'py5' 'py6' 5 设置过期时间,以秒为单位。如果没有指定过期时间,则一直存在,直到使用del移除
expire key seconds 例如:设置py1的过期时间为10秒
expire "py1" 10 6 查看有效时间 秒为单位,已经失效则返回-2
ttl key 例如:查看py2的有效时间
ttl py2 hash类型命令:
hash用于存储对象,对象结构为属性、值。即 键值对中值是属性、值的组合。值的类型是string
1 增加、修改
1.1 设置单个属性
hset key field value 例如:设置py2的属性name为hr
hset "py2" name hr 1.2 设置多个属性
hmset key field1 value1 field2 value2 ... 例如:设置py3的属性name为dx 属性gender为1 属性birthday为2017-1-1
hmset py3 name dx gender 1 birthday 2017-1-1
2 获取
2.1 获取指定键的所有属性
hkeys key 例如:获取py3的所有属性
hkeys py3 2.2 获取一个属性的值
hget key field 例如:获取py2属性name的值
hget py2 name 2.3 获取多个属性值
hmget key field1 field2 .... 例如:获取py3属性name gender 和birthday
hmget py3 name gender birthday 2.4 获取所有属性
hvals key 例如:获取py3的所有属性的值
hvals py3 3 删除:
3.1 删除整个hash键值使用del命令
del key
3.2 删除属性
hdel key field1 field2... 例如:删除py3的属性gender birthday
hdel py3 gender birthday list类型命令:
列表的元素类型为string
按照插入顺序排序 1 增加
1.1 在左侧插入数据
lpush key value1 value2 ... 例如:从键py11的左侧插入数据dx xd
lpush py11 dx xd 1.2 在右侧插入数据
rpush key value1 value2 ... 例如:从py11右侧插入nd bg
rpush py11 nd bg 1.3 在指定元素的前或后插入新元素
linsert key before/after 现有元素 新元素 例如:在py11的列表中nd前加入zbt
linsert py11 before nd zbt 2 获取
2.1 返回列表里指定范围元素:
start、stop为元素的下表索引
索引从左侧开始第一个元素为0
索引可以使负数,从尾部开始,-1代表最后一个元素
lrange key start stop 例如:获取py11的列表所有元素
lrange py11 0 -1 3 删除
3.1 删除指定元素:
将表中前count次出现的值为value的元素全都移除
count>0从头开始往尾移除
count<0从尾开始向头移除
count=0移除所有
lrem key count value 例如:向列表'py12'中加入元素'h0'、'h1'、'h2'、'h0'、'h1'、'h3'、'h0'、'h1'
rpush list3 'h0' 'h1' 'h2' 'h0' 'h1' 'h3' 'h0' 'h1'
从'py12'列表右侧开始删除2个'h0'
lrem py12 -2 h0
查看列表'py12'的所有元素
lrange 'py12' 0 -1 set类型命令:
无序集合,元素为string类型,元素唯一。
对于集合没有修改操作。 1 增加 添加元素
sadd key member1 member2 ... 例如:向py21的集合里添加元素 yg xin yzp
sadd py21 yg xin yzp 2 获取 返回所有的元素
smembers key 例如:获取py21的所有元素
smembers py21 3 删除 删除指定元素
srem key member 例如:删除py21中的yzp
srem py21 yzp zset类型命令:
sorted set 有序集合,元素为string,元素唯一
每个元素有一个double类型的score,表示权重,zset内元素会按照权重从小到大排序
zset没有修改操作 1 增加
zadd key score1 member1 score2 member2 ... 例如:向py31集合中添加gj hr yg xin 权重分别是1 5 8 3
zadd py31 1 gj 5 hr 8 yg 3 xin 2 获取
2.1 返回指定范围内的元素
start stop为元素下标,左边第一个为0,右边第一个为-1
zrange key start stop 例如:获取py31的所有元素
zrange py31 0 -1 2.2 返回score值在min和max之间的成员
zrangebyscore key min max 例如:返回py31集合中权值在4到9之间的数据
zrangebyscore py31 4 9 2.3 返回成员member的score值
zscore key member 例如查看py31中yg的权值
zscore py31 yg 3 删除:
3.1 删除指定元素
zrem key member1 member2 ... 例如:删除py31中的yg
zrem py31 yg 3.2 删除权重在指定范围内的元素
zremrangebyscore key min max 例如:删除py31中权值在4到9之间的元素
zremrangebyscore py31 4 9
redis数据库各种数据类型的增删改查命令的更多相关文章
- 使用控制台对Redis执行增删改查命令
使用控制台对Redis执行增删改查命令 在上一篇里,我们已经安装了redis.这一篇我们将一起来学习如何使用"控制台"管理Redis 首先肯定是打开一个控制台,在windows系统 ...
- Redis的增删改查命令总结与持久化方式
原文:Redis的增删改查命令总结与持久化方式 Redis是用C语言实现的,一般来说C语言实现的程序"距离"操作系统更近,执行速度相对会更快. Redis使用了单线程架构,预防了多 ...
- MySQL数据库之表的增删改查
目录 MySQL数据库之表的增删改查 1 引言 2 创建表 3 删除表 4 修改表 5 查看表 6 复制表 MySQL数据库之表的增删改查 1 引言 1.MySQL数据库中,数据库database就是 ...
- sqlite数据库操作详细介绍 增删改查,游标
sqlite数据库操作详细介绍 增删改查,游标 本文来源于www.ifyao.com禁止转载!www.ifyao.com Source code package com.example ...
- 如何创建数据库以及MySQL增删改查命令的简单运用
在已经安装好MySQL的前提下 1.在Windows打开命令提示符窗口,输入命令启动MySQL命令行工具并登入root用户:mysql -h localhost -u root -p 2.输入密码后, ...
- Delphi - cxGrid连接Oracle数据库 实现数据的增删改查
cxGrid连接Oracle数据库 实现数据的增删改查 cxGrid连接Oracle数据库 1:通过OraSession连接数据库.OraDataSet实现OraSession和OraDataSour ...
- 使用JDBC分别利用Statement和PreparedStatement来对MySQL数据库进行简单的增删改查以及SQL注入的原理
一.MySQL数据库的下载及安装 https://www.mysql.com/ 点击DOWNLOADS,拉到页面底部,找到MySQL Community(GPL)Downloads,点击 选择下图中的 ...
- mongodb windows的安装方法和添加到任务管理器中、检测是否成功、增删改查命令
转: mongodb安装方法: https://blog.csdn.net/heshushun/article/details/77776706 mongodb检测安装成功 .以及增删改 ...
- zkCli的使用 常用的节点增删改查命令用法
zkCli的使用 常用的节点增删改查命令用法 1. 建立会话 命令格式:zkCli.sh -timeout 0 -r -server ip:port ./zkCli.sh -server -time ...
随机推荐
- linux中的颜色控制
\033[031m xxx \033[0m ---------------------->中间的xxx部分显示为红色,不接后面的\033[0m,则以后显示的都是红色,\033表示开始和结束 ...
- memcache搭建
memcache搭建步骤: 个人原创,允许转载,请注明出处,作者,否则追究法律责任. 0.1 memcache的服务端0.2 mysql的服务端0.3 memcache 的客户端:lamp架构 1,环 ...
- 理解C语言中几个常见修饰符
写在前面 今天下午一个同事问「register」关键字是什么作用?噢,你说的是「register」啊,它的作用是……脑袋突然断片儿,我擦,啥意思来着,这么熟悉的陌生感.做C语言开发时间也不短了,不过好 ...
- Cesium 获取鼠标当前位置的模型高度,地形高度,OSGB高度,及其经纬度。
var handler = new Cesium.ScreenSpaceEventHandler(viewer.scene._imageryLayerCollection);var ray,posit ...
- Centos网口流量实时监控
iptraf方式 [root@kazihuo ~]# yum -y install iptraf [root@kazihuo ~]# iptraf-ng-ng 开启服务日志: 进入细节监控后提示日志路 ...
- 使用Bootatrap的心得
使用Bootatrap的心得: 更新中... 在使用过一端时间的Bootstrap之后, 发现自己进入了使用误区,本来人家就为你提供好了样式丰富的各种样式,容器.但是我却在一边使用人家的样式,一边自己 ...
- 笔记:Maven 下载和安装
Windows 安装 下载 Apache Maven,下载地址为 http://maven.apache.org/ 解压缩下载的 ZIP 文件,复制到安装目录 增加环境变量 M2_HOME ,值为 A ...
- python-正铉
第一步:安装插件 pip install Numpypip install matploatlib 第二步 导入包 import numpy as np import matplotlib.pylot ...
- 【Python】 配置文件相对路径&软件自动执行的工作目录
今天对监控脚本做了一些变更,然后突然发现监控全部都失效了..排查了半天问题仍然不知所踪.最终发现居然是一个踩过好几次的老坑.. 就是脚本内写的配置文件为了调试方便写成了相对路径,但是在上线时没有意识到 ...
- 源码实现 --> strdel
删除字符串中某个字符strdel 函数 char *strDel(char* str,const char chToDel) 不是库里面的函数,自己实现的原型,删除str中所有的chToDel字符. ...