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简单的数据操作(增删改查)的更多相关文章

  1. MySQL 简洁 数据操作 增删改查 记不住的 看这里把

    1.库操作====================== 1.创建 CREATE DATABASE DB2 charset utf8; 2.删除 DROP DATABASE db2; 3.使用(进入) ...

  2. HDFS只支持文件append操作, 而依赖HDFS的HBase如何完成数据的增删改查

    转:http://www.th7.cn/db/nosql/201510/135382.shtml 1. HDFS的文件append功能 早期版本的HDFS不支持任何的文件更新操作,一旦一个文件创建.写 ...

  3. SQLAlchemy02 /SQLAlchemy对数据的增删改查操作、属性常用数据类型详解

    SQLAlchemy02 /SQLAlchemy对数据的增删改查操作.属性常用数据类型详解 目录 SQLAlchemy02 /SQLAlchemy对数据的增删改查操作.属性常用数据类型详解 1.用se ...

  4. SQLAlchemy(二):SQLAlchemy对数据的增删改查操作、属性常用数据类型详解

    SQLAlchemy02 /SQLAlchemy对数据的增删改查操作.属性常用数据类型详解 目录 SQLAlchemy02 /SQLAlchemy对数据的增删改查操作.属性常用数据类型详解 1.用se ...

  5. vue实现对表格数据的增删改查

    在管理员的一些后台页面里,个人中心里的数据列表里,都会有对这些数据进行增删改查的操作.比如在管理员后台的用户列表里,我们可以录入新用户的信息,也可以对既有的用户信息进行修改.在vue中,我们更应该专注 ...

  6. Node.js + MySQL 实现数据的增删改查

    通过完成一个 todo 应用展示 Node.js + MySQL 增删改查的功能.这里后台使用 Koa 及其相应的一些中间件作为 server 提供服务. 初始化项目 $ mkdir node-cru ...

  7. vue实现对数据的增删改查(CURD)

    vue实现对数据的增删改查(CURD) 导语: 网上看到一个写的比较好的学习文章,转载分享一下 在管理员的一些后台页面里,个人中心里的数据列表里,都会有对这些数据进行增删改查的操作.比如在管理员后台的 ...

  8. vue实现数据的增删改查

    在管理员的一些后台页面里,个人中心里的数据列表里,都会有对这些数据进行增删改查的操作.比如在管理员后台的用户列表里,我们可以录入新用户的信息,也可以对既有的用户信息进行修改.在vue中,我们更应该专注 ...

  9. Django框架之第二篇--app注册、静态文件配置、form表单提交、pycharm连接数据库、django使用mysql数据库、表字段的增删改查、表数据的增删改查

    本节知识点大致为:静态文件配置.form表单提交数据后端如何获取.request方法.pycharm连接数据库,django使用mysql数据库.表字段的增删改查.表数据的增删改查 一.创建app,创 ...

随机推荐

  1. windows系统安装msi文件总提示2502、2503的错误

    首先: 1.按WIN+R,在运行框中输入“gpedit.msc” 确认:2.打开本地策略组编辑器后依次展开 :“计算机配置”->“管理模板”->“windows组件”->“windo ...

  2. Java多线程常见概念

    进程和线程的区别 进程是资源分配的最小单位,线程是CPU调度的最小单位 线程不能看做独立应用,而进程可以 进程有独立的地址空间,互相不影响,线程只是进程的不同执行路径 线程没有独立的地址空间,多进程的 ...

  3. 编译原理_P1002

    . 词法分析 1.1 词法记号及属性 词法记号.模式.词法单元 记号名 词法单元列举    模式的非形式描述 if if 字符i,f for for     字符f,o,r relation < ...

  4. 吴裕雄--天生自然C语言开发:错误处理

    #include <stdio.h> #include <errno.h> #include <string.h> extern int errno ; int m ...

  5. python学习笔记(13)常用模块列表总结

    os模块: os.remove() 删除文件 os.unlink() 删除文件 os.rename() 重命名文件 os.listdir() 列出指定目录下所有文件 os.chdir() 改变当前工作 ...

  6. Games

    题目描述 Alice and Bob are playing a stone game. There are n piles of stones. In each turn, a player can ...

  7. [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 ...

  8. php的header方法

    http://www.cnblogs.com/fengzheng126/archive/2012/04/21/2461475.html

  9. 阿里云系统安装部署Freeswitch

    1.安装vim apt-get install vim 2.修改镜像源 将/etc/apt/source.list的原有源注释掉,添加下面的源: deb http://mirrors.163.com/ ...

  10. [LC] 11. Container With Most Water

    Given n non-negative integers a1, a2, ..., an , where each represents a point at coordinate (i, ai). ...