Redis简单的数据操作(增删改查)
Redis简单的数据操作(增删改查):
字符串类型 string
1. 存储: set key value
127.0.0.1:6379> set username zhangsan
OK
2. 获取: get key
127.0.0.1:6379> get username
"zhangsan"
以下同理:
	127.0.0.1:6379> set age 23
	OK
	127.0.0.1:6379> get age
	"23"
	127.0.0.1:6379> set age 33
	OK
	127.0.0.1:6379> get age
	"33"
3. 删除: del key
	127.0.0.1:6379> del age
	(integer) 1
	127.0.0.1:6379> get age
	(nil)
哈希类型 hash
1. 存储: hset key field value
		127.0.0.1:6379> hset myhash username lisi
		(integer) 1
		127.0.0.1:6379> hset myhash password 123
		(integer) 1
2. 获取:
		127.0.0.1:6379> hget myhash username
		"lisi"
		127.0.0.1:6379> hgetall myhash
		1) "username"
		2) "lisi"
		3) "password"
		4) "123"
3. 删除: hdel key field
		127.0.0.1:6379> hdel myhash username
		(integer) 1
		127.0.0.1:6379> hget myhash username
		(nil)
列表类型 list:
可以添加一个元素到列表的头部(左边)或者尾部(右边)

底层实现原理自我判断为使用栈的数据结构进行构建。
1. 添加:
	1. 左插入
		127.0.0.1:6379> lpush mylist a
		(integer) 1
		127.0.0.1:6379> lpush mylist b
		(integer) 2
	2. 右插入
		127.0.0.1:6379> rpush mylist c
		(integer) 3
2. 获取:
		127.0.0.1:6379> lrange mylist 0 -1
		1) "b"
		2) "a"
		3) "c"
3. 删除(删除后会有返回值):
	1. 从左侧删除
		127.0.0.1:6379> lpop mylist
		"b"
		127.0.0.1:6379> lrange mylist 0 -1
		1) "a"
		2) "c"
	2. 从右侧删除
		127.0.0.1:6379> rpop mylist
		"c"
		127.0.0.1:6379> lrange mylist 0 -1
		1) "a"
4. 可以插入重复值
	127.0.0.1:6379> lpush mylist a
	(integer) 2
	127.0.0.1:6379> lrange mylist 0 -1
	1) "a"
	2) "a"
        del mylist   删除该键的所有信息
集合类型 set
不允许重复元素
1. 存储:sadd key value
		127.0.0.1:6379> sadd myset a
		(integer) 1
		127.0.0.1:6379> sadd myset a
		(integer) 0
		第二行存入又一个a,但是改变行为0,代表没有插入成功
2. 获取:smembers key:获取set集合中所有元素
		127.0.0.1:6379> smembers myset
		1) "a"
		一次性插入多条数据
		127.0.0.1:6379> sadd myset b c d
		(integer) 3
		127.0.0.1:6379> smembers myset
		1) "d"
		2) "b"
		3) "a"
		4) "c"
3. 删除:srem key value:删除set集合中的某个元素
		删除的同时会有返回值
		127.0.0.1:6379> srem myset a
		(integer) 1
		127.0.0.1:6379> smembers myset
		1) "d"
		2) "b"
		3) "c"
有序集合类型 sortedset:
不允许重复元素,且元素有顺序.每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。
1. 存储:zadd key score value
		127.0.0.1:6379> zadd mysort 60 zhangsan
		(integer) 1
		127.0.0.1:6379> zadd mysort 50 zan
		(integer) 1
		127.0.0.1:6379> zadd mysort 80 wangwuan
		(integer) 1
2. 获取:zrange key start end [withscores]
		127.0.0.1:6379> zrange mysort
		(error) ERR wrong number of arguments for 'zrange' command
		127.0.0.1:6379> zrange mysort 0 -1
		1) "zan"
		2) "zhangsan"
		3) "wangwuan"
		127.0.0.1:6379> zrange mysort 0 -1 withscores
		1) "zan"
		2) "50"
		3) "zhangsan"
		4) "60"
		5) "wangwuan"
		6) "80"
	覆盖数据后重新排序:
		127.0.0.1:6379> zadd mysort 509 zan
		(integer) 0
		127.0.0.1:6379> zrange mysort 0 -1 withscores
		1) "zhangsan"
		2) "60"
		3) "wangwuan"
		4) "80"
		5) "zan"
		6) "509"
3. 删除:zrem key value
		127.0.0.1:6379> zrem mysort zan
		(integer) 1
		127.0.0.1:6379> zrange mysort 0 -1 withscores
		1) "zhangsan"
		2) "60"
		3) "wangwuan"
		4) "80"
通用命令
		1. keys * : 查询所有的键
		2. type key : 获取键对应的value的类型
		3. del key:删除指定的key value
				127.0.0.1:6379> keys *
				1) "mysort"
				2) "myhash"
				3) "mylist"
				4) "username"
				5) "myset"
				127.0.0.1:6379> get username
				"zhangsan"
				127.0.0.1:6379> type username
				string
				127.0.0.1:6379> type mylist
				list
				127.0.0.1:6379>
redis报错信息:
[6644] 02 Apr 23:11:58.976 # Creating Server TCP listening socket *:6379: bind: No such file or directory
出现这类语句的时候,一般是出现了没有关闭redis的服务器或者客户端造成的,故解决方法一般为将所有redis的服务器和客户端都给关闭了,然后重新打开即可
Redis简单的数据操作(增删改查)的更多相关文章
- MySQL  简洁  数据操作 增删改查  记不住的 看这里把
		
1.库操作====================== 1.创建 CREATE DATABASE DB2 charset utf8; 2.删除 DROP DATABASE db2; 3.使用(进入) ...
 - HDFS只支持文件append操作, 而依赖HDFS的HBase如何完成数据的增删改查
		
转:http://www.th7.cn/db/nosql/201510/135382.shtml 1. HDFS的文件append功能 早期版本的HDFS不支持任何的文件更新操作,一旦一个文件创建.写 ...
 - SQLAlchemy02 /SQLAlchemy对数据的增删改查操作、属性常用数据类型详解
		
SQLAlchemy02 /SQLAlchemy对数据的增删改查操作.属性常用数据类型详解 目录 SQLAlchemy02 /SQLAlchemy对数据的增删改查操作.属性常用数据类型详解 1.用se ...
 - SQLAlchemy(二):SQLAlchemy对数据的增删改查操作、属性常用数据类型详解
		
SQLAlchemy02 /SQLAlchemy对数据的增删改查操作.属性常用数据类型详解 目录 SQLAlchemy02 /SQLAlchemy对数据的增删改查操作.属性常用数据类型详解 1.用se ...
 - vue实现对表格数据的增删改查
		
在管理员的一些后台页面里,个人中心里的数据列表里,都会有对这些数据进行增删改查的操作.比如在管理员后台的用户列表里,我们可以录入新用户的信息,也可以对既有的用户信息进行修改.在vue中,我们更应该专注 ...
 - Node.js + MySQL 实现数据的增删改查
		
通过完成一个 todo 应用展示 Node.js + MySQL 增删改查的功能.这里后台使用 Koa 及其相应的一些中间件作为 server 提供服务. 初始化项目 $ mkdir node-cru ...
 - vue实现对数据的增删改查(CURD)
		
vue实现对数据的增删改查(CURD) 导语: 网上看到一个写的比较好的学习文章,转载分享一下 在管理员的一些后台页面里,个人中心里的数据列表里,都会有对这些数据进行增删改查的操作.比如在管理员后台的 ...
 - vue实现数据的增删改查
		
在管理员的一些后台页面里,个人中心里的数据列表里,都会有对这些数据进行增删改查的操作.比如在管理员后台的用户列表里,我们可以录入新用户的信息,也可以对既有的用户信息进行修改.在vue中,我们更应该专注 ...
 - Django框架之第二篇--app注册、静态文件配置、form表单提交、pycharm连接数据库、django使用mysql数据库、表字段的增删改查、表数据的增删改查
		
本节知识点大致为:静态文件配置.form表单提交数据后端如何获取.request方法.pycharm连接数据库,django使用mysql数据库.表字段的增删改查.表数据的增删改查 一.创建app,创 ...
 
随机推荐
- windows系统安装msi文件总提示2502、2503的错误
			
首先: 1.按WIN+R,在运行框中输入“gpedit.msc” 确认:2.打开本地策略组编辑器后依次展开 :“计算机配置”->“管理模板”->“windows组件”->“windo ...
 - Java多线程常见概念
			
进程和线程的区别 进程是资源分配的最小单位,线程是CPU调度的最小单位 线程不能看做独立应用,而进程可以 进程有独立的地址空间,互相不影响,线程只是进程的不同执行路径 线程没有独立的地址空间,多进程的 ...
 - 编译原理_P1002
			
. 词法分析 1.1 词法记号及属性 词法记号.模式.词法单元 记号名 词法单元列举 模式的非形式描述 if if 字符i,f for for 字符f,o,r relation < ...
 - 吴裕雄--天生自然C语言开发:错误处理
			
#include <stdio.h> #include <errno.h> #include <string.h> extern int errno ; int m ...
 - python学习笔记(13)常用模块列表总结
			
os模块: os.remove() 删除文件 os.unlink() 删除文件 os.rename() 重命名文件 os.listdir() 列出指定目录下所有文件 os.chdir() 改变当前工作 ...
 - Games
			
题目描述 Alice and Bob are playing a stone game. There are n piles of stones. In each turn, a player can ...
 - [LC] 156. Binary Tree Upside Down
			
Given a binary tree where all the right nodes are either leaf nodes with a sibling (a left node that ...
 - php的header方法
			
http://www.cnblogs.com/fengzheng126/archive/2012/04/21/2461475.html
 - 阿里云系统安装部署Freeswitch
			
1.安装vim apt-get install vim 2.修改镜像源 将/etc/apt/source.list的原有源注释掉,添加下面的源: deb http://mirrors.163.com/ ...
 - [LC] 11. Container With Most Water
			
Given n non-negative integers a1, a2, ..., an , where each represents a point at coordinate (i, ai). ...