一、key的操作命令
1、select
#跳转到指定数据库,redis默认有16个数据库,下标从0开始
select 数据库下标
2、keys
#查看当前database_DB所有数据
keys *
3、flush[DB,ALL]
#DB代表删除当前选择数据库的所有数据,ALL代表删除全部数据库数据-返回bool
flush[DB,ALL]
4、exists
exists 数据名 #判断数据是否存在-返回1或0
5、move
move 数据的key 数据库下标 #移除指定数据库的数据
6、expire
expire 数据的key 过期时间 #给指定数据库的某个指定的值设置过期时间 单位为S
7、ttl
ttl 数据的key #具体数据库下查看具体数据的过期剩余时间
8、set
set 数据key 数据value #在指定数据库下添加数据
9、get
get 数据key #在指定数据库下根据key查看具体的值
10、type
type 数据key #在具体的数据库下查看具体数据的数据类型
二、String类型操作命令
1、append
#从一个字符串末尾追加字符(返回追加后的字符长度),如果key不存在,则新创建一个String类型的Key,value则是追加的值
append 数据key "追加的字符串"
2、strlen
strlen 数据key #获取String数据字符长度
3、incr
incr 数据key #每次调用时自+1 , 略似i++
4、decr
decr 数据key #每次调用时自-1 , 略似i--
5、incrby
#给指定key原来的value本身+上你想加的数 , 略似i+=n
incrby 数据key 增长数量
6、decrby
#给指定key原来的value本身+上你想减的数 , 略似i-=n
decrby 数据key 减少数量
7、getrange
#从数据值上指定下标截取(下标从0开始),开始为0,结束为-1就是取整个值~
getrange 数据key 开始下标 结束下标
8、setrange
#从数据指定下标值开始替换成自己想要的值 key a val "abcd" ——> setrange a 1 tt 返回结果 attd
setrange 数据key 开始下标 想要替换的值
9、setex(全代码为 set with expire)
setex 数据key 过期时间 数据value #新增一个自带过期时间的数据
10、setnx (全代码为 set if not exist)
#这种新增方法会先判断这个key是否存在,如果存在设置的值不会发生改变,不存在则新建一个新的数据(成功返回1/失败为0)
setnx 数据key 数据value
11、mset
mset 数据key1 数据value1 数据key2 数据value2 .. .. .. #批量新增数据
12、mset(存储对象属性)
#例如:smet user:1:name "张三" user:2:age 18
mset 对象名:对象id:对象属性1 属性1值 对象:对象id:对象属性2 属性2值...
13、mget
mset 数据key1 数据key2 . . . #批量获取数据
14、mget(取存储的对象属性值)
#例如 mget user:1:name user:2:age ...
mget 对象名:对象id:对象属性1 对象:对象id:对象属性2...
15、msetnx
#批量新增数据之前会判断新增的key是否存在,如果有一个已经存在并且新增覆盖失败,则其他全部一起失败(原子性),反正一起成功~
msetnx 数据key1 数据value1 数据key2 数据value2 .. .. ..
16、getset
#先读出原本的值,在进行写的操作,写的操作可覆盖原来的值
getset 数据key 数据value
三、List类型操作命令(可重复的有序集合)
1、Lpush
lpush 数据key 数据value1
lpush 数据key 数据value2
lpush 数据key 数据value3
...
#新增list类型,返回list集合长度
#lpush新增的值是倒过来的,比如新增1,2,3 获取的值是3,2,1
2、Lrange
#获取开始下标(包括)到结束下标(包括)之间的值
#开始下标为0 结束为-1获取全部值
lrange 数据key 开始下标 结束下标
3、Rpush
rpush 数据key 数据value1
rpush 数据key 数据value2
rpush 数据key 数据value3
...
#新增list类型,返回list集合长度
#rpush新增的值是按顺序的,比如新增1,2,3 获取的值是1,2,3
4、Lpop
Lpop 数据key #移除最左边的第一个值 , 也就是list集合中的第一个值
5、Rpop
Rpop 数据key #移除最右边的第一个值 , 也就是list集合中的最后一个值
6、Lindex
Lindex 数据key 指定下标 #获取list中指定下标值(下标从0开始)
7、Llen
Llen 数据key #查看list长度
8、Lrem
Lrem 数据key 移除的个数 移除的数据value #移除list中指定的几个value
9、Ltrim
#截取出list集合中指定的值,List原本数据就成为截取后的数据
Ltrim 数据key 截取开始下标 截取的个数
10、Rpoplpush
#将选择的list数据key的最右边数据value也就是最后一个value移动到另一个者需新创的list中
Rpoplpush 数据key 另一个或者需新创的数据key
11、Lset
#将list存在的具体下标值进行替换,不存在值进行替换时报错
Lset 数据key 指定下标 新元素
12、Linsert
#在一个list中指定的某个数据value前或者后插入新的value
linsert 数据key [before(前)|after(后)] 指定的数据value 插入的value
四、Set类型操作命令(唯一value的无序集合)
1、Sadd
#在不存在key时创建key并添加value,存在时添加value
Sadd 数据key 数据value
2、Smembers
#查看所有set成员
Smembers 数据key
3、Sismember
#查看key中是否存在该value(返回0/1)
Sismember 数据key 数据value
4、Scard
#获取set集合中的元素个数
Scard 数据key
5、Srem
#移除set中具体的一个value
Srem 数据key 数据value
6、Srandmember
#随机获取若干个随机value
Srandmember 数据key [获取个数]
7、Spop
#随机从set中删除value
Spop 数据key
8、Smove
#将set中指定的一个value移动到另外一个set——key中
Smove 数据key 移动到的数据key 需要移动的值
9、Sdiff(差集)
#查看两个指定set中不同的元素
Sdiff 数据key1 数据key2
10、Sinser(交集)
#查看两个指定set中相同的元素
Sinser 数据key1 数据key2
11、Sunion(并集)
#查看两个指定set中的所有元素
Sinser 数据key1 数据key2
五、Hash类型操作命令(可重复的key-value集合)
1、Hset
#新增属性
Hset 数据key 属性key 属性value
#存对象 1为标识
Hset 数据key:1 属性key1 属性value1 属性key2 属性value2 .. ..
2、Hget
#读取属性
Hget 数据key 属性key
#读取对象
Hget 数据key:1 属性key1 属性key2 . .
3、Hmset
#连续存放多个键值对属性
Hmset 数据key 属性key1 属性value1 属性key1 属性value1 ....
4、Hmget
#获取多个指定的属性值
Hmget 数据key 属性key1 属性key1 ....
5、Hgetall
#获取全部的属性值
Hgetall 数据key
6、Hdel
#根据属性key删除一个指定的属性
Hdel 数据key 属性key
7、Hlen
#获取hash的元素个数
Hlen 数据key
8、Hexists
#判断某个具体的键值是否存在
Hexists 数据key 属性key
9、Hkeys
#获取hash中所有的元素key
Hkeys 数据key
10、Hvals
#获取hash中所有的元素value
Hvals 数据key
11、Hincrby
#每次调用时给hash具体的一个属性value自增
Hincrby 数据key 元素key 自增数量
12、Hdecrby
#每次调用时给hash具体的一个属性value自减
Hdecrby 数据key 元素key 自减数量
13、Hsetnx
#新增hash的键值属性,如果存在创建失败,如果不存在成功(返回值0/1)
Hsetnx 数据key 元素key 元素value
六、ZSet类型操作命令(唯一value的有序集合)
1、Zadd
#添加一个值,标明序号
Zadd 数据key 序号 元素value
#添加多个值
Zadd 数据key 序号 元素value 序号 元素value ..
2、Zrange
#查看指定下标到指定结束下标的值,0到-1为查看全部
Zrange 数据key 开始下标 结束下标
3、Zrangebyscore
#根据插入序号为set集合排序 -inf +inf表示负无穷到正无穷 也就是从小到大(如果前面的值比后面的值大则返回空错),也可以写上具体方位,例如 1000 2000,或者-inf 10(10以下)或者5 +inf(5以上)
Zrangebyscore 数据key -inf +inf
#例如
#Zadd user 20 张三
#Zadd user 30 李四
#Zadd user 15 王五
#Zrangebyscore user -inf +inf
#根据序号查询出来就是王五,张三,李四
#查询时末尾带上withscores,便可查询出对应元素的序号
Zrangebyscore 数据key -inf +inf withscores
4、Zrem
#移除指定元素
Zrem 数据key 元素key
5、Zcard
#查看Zset中有多少个元素
Zcard 数据key
6、Zrevrange
#从大到小排序查看 0 -1查看全部
Zrevrange 数据key 开始下标 结束下标
7、Zcount
#获取指定下标区间的元素数量
Zcount 数据key 开始下标 结束下标