Redis 字符串(String)常用命令:
语法:
//Reids 基本命令
set key value.给某个key赋值
get key value.获取某个key的值
del key 删除某个key
append key value 给某个key添加值(在key最后追加)
strlen key 获取key的长度
//Redis 截取和替换
getrange key start end获取从起始到结束位置的值(类似java substring)
setrange key start end替换从起始到结束位置的值(类似java replace)
//Reids 逻辑运算
//一定要是数字才能+和- 否则报错
incr key +1(类似java ++)
decr key -1(类似java --)
setex key seconds value给某个key设置有效时间
setnx key value给某个值赋值(如果不存在赋值,赋值忽略。成功:1,失败:0)
mset key1 value1 key2 value2...给多个key赋值
mget key1 key2...获取多个Key的值
msetnx key1 value1 key2 value2... 给多个key赋值
getset(先get在set) key value2
Redis列表(list) 常用命令:
性能总结:
他是一个字符串链表,left、right都可以插入添加;
如果间不存在,创建新的链表;
如果值已存在,新增加内容;
如果值全移除,对应的键也就消失了。
链表的操作无论是头和尾效率都极高,但假如是对中间元素进行操作,效率就很低。
语法:
//list 赋值
lpush key value [value ...]//从栈顶往下压值
EX: lpush list 1 2 3 4 5//lpush命令:数据在内存是 5 4 3 2 1
rpush key value [value ...]//从栈底网上压值
EX: rpush list 1 2 3 4 5//rpush命令:数据在内存是 1 2 3 4 5
//list范围查询
lrange key start stop
//list 出栈
lpop key //从栈顶弹出值
rpop key //从栈底弹出值
//获取索引为多少的值
lindex key index(索引值)
EX:lindex list 3
//获取key的大小
llen key
EX:llen list
//删除多个 value相同的值
lrem key count value
EX:lrem list 2 java
//截取list置顶范围的值后再赋值给key
ltrim key start stop
EX:ltrim list 0 3
// 源列表 目的列表
rpoplpush source destination
EX:rpoplpush list list1
//修改下标为几的值
lset key index value
EX:lset list 2 xxxooo
//在哪个元素前添加值
linsert key before|after pivot value
EX:linsert list before x java
Redis集合(set) 常用命令:
set集合去重复数据。
语法:
//添加 set 集合()
sadd key member [member ...]
EX:sadd set 1 1 2 2 3 3
//迭代set集合元素。(显示set几个元素)
smembers key
EX:smembers set
//判断key 是不是member的成员.
//返回值:
// 如果 member 元素是集合的成员,返回 1 。
// 如果 member 元素不是集合的成员,或 key 不存在,返回 0 。
sismember key member
EX:sismember set java
//判断set集合的大小
scard key
//删除set集合一个或多个元素
srem key member [member ...]
EX:srem set java spring
//随机获取Set集合中几个元素
srandmember key [count]
EX:srandmember set 3//随机获取set集合中3个元素
//set集合随机出栈
spop key
EX:spop set
//把源数据set member 移动到目标数据set中
smove source destination member
EX:smove set set1 java
//差集.
//数据是在第一个set里面(展示的是和后面set不同的数据),而不是在后面任何一个set里面的项
sdiff key [key...]
EX:sdiff set set1
//交集
//显示的数据是两个集合相同部分的数据
sinter key [key...]
EX:sinter set set1
//并集
//显示的数据是两个集合中所有数据并且去重
sunion key [key...]
EX:sumion set set1
Redis哈希(Hash) 常用命令:
hash 是KV模式不变,但v是一个键值对