redis各类型数据命令

key操作

keys *     显示出所有的键
keys key*   显示所有带key的键
exists name 判断是否带有name的键,成功的就返回1,不成功就返回0
del key1 删除key1
expire key1 100 给key1 设置100秒的过期时间。
ttl key1 查看key1的过期时间
select 0 选择一个库
move set1 2 把set1键移到 第3个库
persist key1 取消key1的过期时间
randomkey 随机显示一个键
rename key1 name2 更改一个键的名字
type key1 查看key1的数据类型
server服务操作

dbsize 显示当前数据库里有多少个key的数量
info   查看当前redis的状态
flushdb 清空当前所有的键
flushall 清空所有数据库里的键
string类型

set key1 aaaa          增加一个key1
get key1                  提取key1
setnx key1 aaa       和touch命令差不多,如果key1有值则赋值不成功,只有key1没有值时才会赋值成功。
setex key1 100 jjllk   赋值一个key1 给key1一个100秒的过期时间
ttl key1   查看key1的生存周期
mset key1 99a key2 111 key3 aaa   表示可以连续赋值一串key
mget key1 key2 key3   表示连续提取出key来。
hash类型

创建一个hash组user1

hset user1 name lv
hset user1 age 30
hset user1 job it
用hgetall user1来全部显示出来,或者用hget user1 age来只显示其中的age项

批量去创建一个user2的hash组

hmset user2 name xiaoxiao age 20   job   techer   在同一行批量创建一个hash组
hgetall user2   提取出全部
hmget user2 name age   只提取出两个
hdel user2 job    只删除user2里面的 job记录。
hkeys user2       提取出里面的所有键,不带数值
hvals user2       提取出里面的所有值,不带键
hlen  user2       查看hash有几个key。
list类型

lpush list1 "aaa bbb" 命令表示从数据的左边去进行插入数据。最早插入的数据会不断的移到右边 
rpush list1 "aaa bbb" 命令表示从数据的右边去进行插入数据。最新插入的数据会不断的移到右边。 
lrange list1 0 -1 表示显示这个list1列表里面的所有数据并标出位置。 
linsert list1 before a e   表示在list1 的a前面加入一个e元素
lset list1 4 aaa  把list1里面的第5个元素值改为aaa
lindex list1 0 查看list1里面第1个元素 的值 
lindex list1 3  查看list1里面第4个元素的值
llen list1     查看list1里面有多少个元素
rpop list1 从list1列表的右边开始取数值,取出第一个数。并且会把这个值清空 
lpop list1 从list1列表的左边开始取数值,取出第一个数。并且会把这个值清空
set类型

添加一个名为set1的集合

sadd set1 jlkjl
sadd set1 linx
sadd set1 ddd
sadd set1 aava
srem set1 ddd 删除set1里面的ddd元素
smembers set1 可以取出这个集合的值,但是集合的值是随机位置的,并不会固定键值的位置。
spop set1   随机取出一个元素并且删除它
sdiff set1 set2  求差集,以set1为标准,显示出set2里面不带有set1的元素
sdiffstore setc set1 set2 求差集,并把结果存到setc里面去。
sinter set1 set2   求一个交集,并显示出来
sinterstore setc set1 set2 求 set1与set2的交集,并把他存入到setc里面去
sunion set1 set2    求set1与set2的并集,并显示
sunionstore setc set1 set2 求set1与set2的并集,并存入setc里面
sismember  set1 ddd   判断一个元素是否在set1里
srandmember set1   随机取出一个元素,但不会删除它
zset类型

添加一个名为set2的有序集合

zadd set2 12 "aab:"
zadd set2 2 "aacb"
zadd set2 24 "a55acb"
zadd set2 4 "aoo55acb"
zrange set2 0 -1正序列提取出来,值前面的数越小,越排在前头。 
zrevrange set2 0 -1倒序列提取出来,值前面的数越大,越排在前对。
zrange set2 0 -1 withscores 显示出set2的值与索引数值
zrem set2 aab  删除里面的aab元素
zrank set2 aab 显示出aab的索引值
zrevrank set2 aab 反着显示索引值
zcard set2 显示集合所有元素个数
zcount set2 2 12 通过索引数值来显示2到12之间有几个匹配到的元素个数。
zrangebyscore set2 2 12 通过索引数值来显示2到12之间有几个匹配到的元素,并显示他的值
zremrangebyrank set2 0 3 通过索引值来匹配0到3之间的元素,并删除对应的元素
zremrangebyscore set2 2 12 通过索引数值来显示2到12之间有几个匹配到的元素,并删除对应的元素。

时间: 2024-10-02 00:41:43

redis各类型数据命令的相关文章

Redis学习笔记(2) Redis基础类型及命令之一

1. 基础命令 (1) 获取符合规则的键名列表 格式为:KEYS pattern 其中pattern表示支持通配符 # 建立一个名为bar的键 127.0.0.1:6379> SET bar 1 OK # 获取Redis所有键 127.0.0.1:6379> KEYS * 1) "bar" 注意:KEYS命令需要遍历Redis中所有键,因此当键的数量较多时会影响性能. (2) 判断一个键是否存在 格式为:EXISTS key 如果存在则返回1,否则返回0. 127.0.0.

Redis学习笔记(3) Redis基础类型及命令之二

1. 集合类型 集合类型与列表类型有很多相似之处,但二者的区别在于:前者具有唯一性,但不具有有序性:后者具有有序性,但不具有唯一性.集合类型的常用操作是向集合中加入或删除元素.判断某个元素是否存在等,以及多个集合类型之间进行并集.交集和差集运算. (1) 命令 1) 增加/删除元素 格式为:SADD key member [member ...] SREM key member [member ...] SADD向集合中增加一个或多个元素,加入的元素若已存在语集合中,则会忽略该元素.命令返回成功

Redis常用类型数据操作

sortedset: 添加: zadd key score1 member1 score2 member2...  zad mysort 90 laosong 100 zhangsan 获得:zscore key member zscore mysort laosong 统计成员个数  zcard key zcard mysort 删除zrem key member1[member2 member3...] zrem mysort zhangsan 范围查询zrange key start en

Redis学习笔记(字符串类型常见命令操作)

Redis字符串类型常见命令操作 存取数据 存字符串类型数据: 取字符串类型数据: 当键不在的时候会返回空 如果重复向一个键中存数据,后存储的数据会覆盖前存储的数据 递增数字 当存的字符串是整数形式的时候,Redis提供一个: INCR命令    作用:让当前键值递增,并返回递增后的值 当要递增的键值不存在的时候,redis会自动存入这个键,默认值为0,并把值递增 键的命名 键名Redis没有强制要求,一般命名形式为: 对象类型:对象ID:对象属性 例如: user:1:name  使用这个来存

[redis] redis 对string类型数据操作

package com.xwolf.java.redis; import org.junit.Before; import org.junit.Test; import redis.clients.jedis.Jedis; import redis.clients.jedis.JedisPool; import redis.clients.jedis.JedisPoolConfig; import java.util.List; /** * Created by Administrator on

redis 系列15 数据对象的(类型检查,内存回收,对象共享)和数据库切换

原文:redis 系列15 数据对象的(类型检查,内存回收,对象共享)和数据库切换 一.  概述 对于前面的五章中,已清楚了数据对象的类型以及命令实现,其实还有一种数据对象为HyperLogLog,以后需要用到再了解.下面再了解类型检查,内存回收,对象共享,对象的空转时长. 1.1   类型检查与命令多态 redis中用于操作键的命令基本上可以分为两种类型,一种是可以对任何的键执行,如:del, expire,rename,type,object 这些命令等,对于这些命令属于多态命令.另一种命令

Redis基本类型与常用命令

Redis基本类型一共有五类: 字符串类型(string): 散列类型(hash): 列表类型(list): 集合类型(sort): 有序集合类型(zset): 在redis中,所有的类型都是被以键值对形式存放,类型只体现在键值对的值上. 如列表类型,数据格式如下.它的整体存放仍然是key-value的格式,只不过它的value里面是一个列表类型. 如散列类型,数据格式如下.它的整体存储也是遵照key-value的格式,但是它的value存放是散列类型. 其他的几种数据类型类似,都是将各自的特点

Redis的系统级命令

文章建立一个统一的认识就是Redis的版本是3.2.8 1:BGREWRITEAOF(bgrewriteaof) 执行一个 AOF文件 重写操作.重写会创建一个当前 AOF 文件的体积优化版本. 即使 BGREWRITEAOF 执行失败,也不会有任何数据丢失,因为旧的 AOF 文件在 BGREWRITEAOF 成功之前不会被修改. 重写操作只会在没有其他持久化工作在后台执行时被触发,也就是说: 如果 Redis 的子进程正在执行快照的保存工作,那么 AOF 重写的操作会被预定(scheduled

转:Redis介绍及常用命令大全

一 Redis介绍 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis的开发工作由VMware主持. Redis能运行在大多数POSIX(Linux, *BSD, OS X 和Solaris等)系统上,官方没有支持Windows的版本.目前最新的版本是2.2.11,这个版本主要是修复了一个2.2.7版本中遍历方式优化带来的一个bug. 和普通的Key-Value结构不同,R