02_Redis数据类型(String、Hash)
【Redis数据类型】
redis是通过key-Value来存储的,其支持的数据类型如下:
1.字符串
2.Hash
3.List
4.Set
5.SortSet(zset)
注:redis中,命令(get、set...)忽略大小写,而key/value不忽略。
【String类型】
1.赋值 set
语法:set key value
2.取值 get
语法:get key
3.设置多个值 mset
语法:mest key1 value1 key2 value2 .....
4.获取多个值
语法:mget key1 key2
5.取值并赋值 getset
语法:getset key value
6.删除 del
语法: del key
7.自增
自增1-语法:incr key
自增指定的数值-语法:incrby key increment
应用场景:商品编号、订单号采用String的递增数字特性生成
定义商品编号key为 items:id
8.自减
自减1-语法:decr key
自减指定的数值-语法:decrby key decrement
9.向尾部追加值
语法:append key value
10.获取字符串的长度
语法:strlen key
如果不存在该键,返回0
【Hash类型】
Redis Hash
hash称为散列类型,它提供了字段和字段值的映射。
字段只能是字符串类型,不支持散列、集合等其它类型。
1.一次给一个字段赋值
语法:hset key field value
注意:hset执行插入操作时:返回1
hset执行更新操作时:返回0
2.一次给多个字段赋值
语法:hmset key field1 value1 field2 value2......
3.字段不存在,执行插入,字段存在,不执行任何操作
语法:hsetnx key field value
4.一次取一个值
语法:hget key field
5.一次取多个值
语法:hmget key field1 field2...
6.获取所有的字段值
6.删除一个/多个字段
语法:hdel key field1 field2....
返回值:删除的个数
7.数字增长指定值
语法:hincrby key field increment
注意:没有自增1的hincr指令
【其它重要指令】
1.判断普通的key字段是否存在
语法:exists key
返回值:存在,返回1;不存在,返回0
2.判断hash中的field是否存在
语法:hexists key field
3.获取该redis中所有的key名
语法:keys *
4.只获取hash类型中的所有字段名
语法:hkeys key *
5.只获取hash类型中的所有字段值
语法:hvals key *
6.获取hash类型中字段的数量
语法:hlen key
【实例:商品信息存储】
字段:id name amount price
商品在redis中定义的key为:[ items:1001 ]
02_Redis数据类型(String、Hash)的更多相关文章
- Redis应用场景 及其数据对象 string hash list set sortedset
原文地址:http://www.cnblogs.com/shanyou/archive/2012/09/04/2670972.html Redis开创了一种新的数据存储思路,使用Redis,我们不用在 ...
- 02_Redis数据类型
Redis 数据类型:键值对存储 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). 注意:key:全 ...
- 5、Redis五大基本数据类型——String类型
一.Redis支持数据类型简介 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). 二.String类 ...
- C#数据类型-string
string是各种编程语言中最基础的数据类型,长期以来受尽其它类的压迫,经常被肢解(Substring.Split).蹂躏(Join)... 而现在C#数据类型string要“翻身闹革命”了,它几乎无 ...
- JS基础_数据类型-String类型
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- redis数据类型[string 、list 、 set 、sorted set 、hash]
1. Keys redis本质上一个key-value db,所以我们首先来看看他的key. 首先key也是字符串类型,但是key中不能包括边界字符:由于key不是binary safe的字符串, ...
- Redis探索之路(三):Redis的五种数据类型String和Hash
一:String 存储二进制数据,可以图片,序列化对象 GET,SET SETNX(not exist) setnx age 33 返回 0,1 SETEX设置有效期 SETEX COLOR 2 ...
- .Net Core下 Redis的String Hash List Set和Sorted Set的例子
1.新建一个.Net Core控制台应用程序,用Nuget导入驱动 打开程序包管理控制台, 执行以下代码. PM> Install-Package ServiceStack.Redis 即可添加 ...
- 《闲扯Redis六》Redis五种数据类型之Hash型
一.前言 Redis 提供了5种数据类型:String(字符串).Hash(哈希).List(列表).Set(集合).Zset(有序集合),理解每种数据类型的特点对于redis的开发和运维非常重要. ...
随机推荐
- Freeman链码
[简介] 链码(又称为freeman码)是用曲线起始点的坐标和边界点方向代码来描述曲线或边界的方法,常被用来在图像处理.计算机图形学.模式识别等领域中表示曲线和区域边界.它是一种边界的编码表示法,用边 ...
- CSS3 选择器 修改 整数个样式
.blogbottom ul li:nth-child(4n){margin-right:0px;} 说明:4n就是每第4个.
- ubuntu画面延迟问题解决
新配的电脑,安装ubuntu16.04以后,出现画面延迟的问题,尤其浏览网页的时候画面十分卡顿.用free命令查看过可用内存6.多G,经过询问大概是显卡问题,然后在https://ubuntuforu ...
- 洛谷 P3239 [HNOI2015]亚瑟王(期望dp)
题面 luogu 题解 一道复杂的期望\(dp\) 思路来源:__stdcall 容易想到,只要把每张牌打出的概率算出来就可以求出\(ans\) 设\(fp[i]\)表示把第\(i\)张牌打出来的概率 ...
- plsql11破解注册码
plsql11.0.6.1796-64bit的可以用注册码: Product Code:4t46t6vydkvsxekkvf3fjnpzy5wbuhphqz serial Number: passwo ...
- git 下载 安装
1.下载Git,官网地址:https://git-scm.com/,进入官网首页 在右下方的显示器中找到最新的版本下载,点击下载,跳转到下载页面 下载完成 2.安装Git 双击刚刚下载完成的安装文件, ...
- npm install时 报错Maximum call stack size exceeded
给npm降级或者升级 降级 : npm install -g npm@5.4.0 升级 : npm install -g npm 升级到最新版
- 使用Maven运行Java main的3种方式使用Maven运行Java main的3种方式
maven使用exec插件运行java main方法,以下是3种不同的操作方式. 一.从命令行运行 1.运行前先编译代码,exec:java不会自动编译代码,你需要手动执行mvn compile来完成 ...
- EntityFramework 建立一对一关系
前言:本来要使用实体拆分实现一对一,但发现查询时无法单独查询,影响效率,故改用手动建立一对一关系 例: 实体类: public class TestDbContext : DbContext { pu ...
- mysql把之前表单进行拆分
今天有个任务是需要把之前的历史数据做一个清理. 原历史数据 很多电话号码是放到了一起.所以需要新建一个联系方式表.然后进行增加 新建表格如下: 然后再进行查询数据. SELECT a.uid,subs ...