Redis各数据类型的常用操作
redis存储的数据类型主要有五种:字符串(String)、列表(List)、集合(Set)、排序集合(Sorted Set)、散列表(Hash)
一、字符串(String)常用操作
set:设置一个值,如set username tuozixuan
get: 获取一个值,如get username
append:如果key已经存在,则追加到值的末尾,否则新创建一个,如append username tuozixuan
decr: 将值原子性的递减1,如decr userage
incr: 将值原子性的递增1,如incr userage
decrby: 将值原子性的减去指定值,如decrby userage 5
incrby: 将值原子性的增加指定值,如incrby userage 5
strlen:获取字符串值的长度
二、列表(List)常用操作
lpush: 从列表左端推入一个元素,如lpush namelist tuozixuan
rpush: 从列表右端推入一个元素,如rpush namelist tuozixuan
lrange: 从列表中取出指定范围的元素,如lrange namelist 0 2;lrange namelist 0 -1(取出所有元素)
lpop: 从列表左端弹出一个元素,如lpop namelist
rpop: 从列表右端弹出一个元素,如rpop namelist
lrem: 从左往右或从右往左删除指定数目的元素,如
lrem namelist 1 tuozixuan(从左往右删除一个值为tuozixuan的元素)
lrem namelist -1 tuozixuan(从右往左删除一个值为tuozixuan的元素)
lset: 把列表中的指定位置设置为新值,如lset namelist 2 tuozixuan2
lindex: 把列表中指定下标的值,如lindex namelist 1
ltrim: 保留列表中指定范围的元素,如ltrim namelist 2 4
llen: 获取列表中元素的数量,如llen namelist
三、集合(Set)常用操作
sadd: 在集合中加入一个元素,如sadd nameset tuozixuan
smembers: 获取集合中的所有元素,如smembers nameset
scard: 获取集合中元素的数量,如scard nameset
sismember: 判断元素是否在集合中,如sismember nameset tuozixuan
spop: 随机从集合中弹出一个元素,如spop nameset
srem: 从集合中移除元素,如srem nameset tuozixuan
srandmember: 从集合中随机取出一个元素,如srandmember nameset
四、散列表(Hash)常用操作
hset: 在散列表中指定key的元素上设置某个字段的值,如hset userhash name tuozixuan
hget: 获取某个字段的值,如hget userhash name
hmset: 设置多个字段的值,如hmset userhash name1 tuozixuan1 name2 tuozixuan2
hmget: 获取多个字段的值,如hmget userhash name1 name2
hkeys: 返回该散列表中所有的字段名,如hkeys userhash
hvals: 返回该散列表中所有的值,如hvals userhash
hlen: 返回该散列表中字段的数量,如hlen userhash
hexists: 查看该字段在散列表中是否已经存在,如hexists userhash name1
hdel: 删除散列表中指定字段,如hdel userhash name1
hgetall: 获取散列表中所有的字段名和值,如hgetall userhash
hincrby: 给散列表中某个字段的值加上指定值,如hincrby userhash age 3
五、排序集合(Sorted Set)常用操作
zadd:在集合中加入一个元素,并指定分值,如zadd namezset 1.0 tuozixuan1
zcard:返回集合中元素的数量,如zcard namezset
zrange:获取按分值排序的集合中指定范围的元素,如zrange namezset 2 4
zrevrange: 获取按分值逆序排列的集合中指定范围的元素,如zrevrange nameset 0 -1
zrem:从排序集合中删除指定元素,如zrem namezset tuozixuan1
zscore: 获取排序集合中指定元素的分支,如zscore namezset tuozixuan1
zrank:获取元素在集合中的排名(下标),集合按分值从小到大排列,如zrank nameset tuozixuan1
zrevrank: 获取元素在集合中的排名(下标),集合按分值从大到小排列,如zrevrank nameset tuozixuan1