redis数据操作

1、string

命令

表达式

说明

set

set mykey myvalue0

赋值,set 会覆盖该key之前的值

setnx

setnx mykey 11

如果key不存在,才设置这个值

setex

setex name 10 lili

设置数据的有效时间为10

get

get key001

获取某个key的值

keys

keys mykey

获取多个key的值,结果为nil表示无数据

keys

keys *

获取所有key的值

exists

exists mykey

是否存在key的值,存在,返回1

del

del mykey

删除数据

setrange

setrange key [index] value

从指定位置开始替换字符串,index是从1开始数

mset

mset k1 v1 k2 v2 k3 v3

批量设置

mget

mget k1 k2 k3

批量获取

getset

getset key newvalue

返回旧值并设置新值

incr

incr key

递增+1,若key对应的类型为字符串而不是数字的时候,会抛出异常

incrby

incrby key [byvalue]

递增指定数字

decr

decr key

递减-1

decyby

decyby key [byvalue]

递减指定数字

append

append key value

追加字符串

strlen

strlen key

获取字符串长度

2、Hash

命令

表达式

说明

hset

hset key field value

给指定keyk-namehashfield属性添加值

hget

hget key field

获取某个hash值得fied属性值

hmset

hmset key f1 v1 f2 v1

批量设置

hmget

hmget key f1 f2

批量获取

hdel

hdel key f1 f2

批量删除指定hashfield属性

hlen

hlen key

返回指定hash的键值对数目

hkeys

hkeys key

返回指定hash的所有field名称

hvals

havals key

返回指定hash的所有值

hincrby

hincrby key fied1 [num]

fied1的值加num

hgetall

hgetall key

获取指定hash的所有属性和属性值

3、list

命令

表达式

说明

lpush

lpush key value1 [value…]

将一个或多个值推入列表的左端,先进后出

rpush

rpush key value1 [value…]

将一个或多个值推入列表的右端,先进先出

lpop

lpop key

移除并返回列表最左端的元素

rpop

rpop key

移除并返回列表最右端的元素

lindex

lindx key offset

返回列表中偏移量为offset的元素

llen

len key

返回元素的个数

lrange

lrange key start end

返回列表中从start偏移量到end的元素,包含偏移量在startend的元素

ltrim

ltrim key start end

对列表进行修剪,只保留从startend偏移量的元素,偏移量为startend的元素也会被保留

lset

lset key 0 b

替换指定下标的元素

lrem

lrem key 1 b

移除列表中第一个值为b的元素

 3.1、阻塞命令

命令

表达式

说明

blpop

blpop key [key …] timeout

从第一个非空列表中弹出最左端的元素,或者在最左端阻塞并等待可弹出的元素

brpop

brpop key [key …] timeout

从第一个非空列表中弹出最右端的元素,或者在最右端阻塞并等待可弹出的元素

rpoplpush

rpoppush src-key dest-key

src-key列表弹出最右端的元素,然后将该元素推入dest-key列表的最左端,并向用户返回列表的名称和该元素元素

brpoplpush

brpoppush src-key desy-key timeout

src-key列表弹出最右端的元素,然后将该元素推入dest-key列表的最左端,并向用户返回这个元素;如果src-key为空,那么在timeout秒内阻塞并等待可弹出的元素出现

4、set

命令

表达式

说明

sadd

sadd key item [item…]

批量添加元素

srem

srem key item[item]

批量移除元素

sismember

sismember key item

检查集合中是否存在item元素

scard

scard key

查询集合元素数量

srandmember

srandmember key [count]

随机返回count个元素,如果集合元素不足count,返回元素会出现重复

spop

spop key

随机移除一个元素,并返回

smove

smove src-key dest-key item

src集合中移除元素并添加到dest集合

4.1、set组合操作

命令

表达式

说明

sdiff

sdiff key [key…]

返回存在第一个集合,但是不存在与其他集合的数据,差集运算

sdiffstore

sdiffstore des-key key [key…]

将那些存在于第一个集合但是不存在与其他集合的元素存储到dest集合中

sinter

sinter key [key…]

取交集

sinterstore

sinterstore dest-key key [key…]

将那些同时存在于所有集合中的元素存储到dest集合中

sunion

sunion key [key…]

返回至少存在于一个集合中的元素,交集运算

sunionstore

sunionstore dest-key key [key…]

将交集元素存储到dest

5、zset

命令

表达式

说明

zadd

zadd key score member [score member…]

添加元素,score可以用+inf-inf分别表示正无穷和负无穷

zscore

zscore key member

获取元素的分数

zcount

zcount key min max

获取指定返回内的元素个数

zrem

zrem key item [item…]

删除元素

zremrangebyrank

zremrangerank key start end

删除指定排名范围的元素

zremrangebyscore

zremrangebyscore key min max

删除指定分数范围的元素

zrank

zrank key item

获取元素的排名(从小到大排序)

zrevrank

zrevrank key item

获取元素的排名(从大到小排序)

zincrby

zrncyby key inscrscore item

给元素item增加inscrsocre分数,如果inscrescore为复数,表示减

zrange

zrange key start stop [withscore]

从小到大返回score分值在某个范围(包含俩端元素)的元素列表,需要同时返回分数的话在尾部添加withscore

zrevrrange

zrevrange key start stop [withscore]

类似于zrange,只不过返回的元素从大到小排列

zrangebyscore

zrangebyscore key min max [withscore] [limt offset count]

从小到大返回minmax范围的元素

 

你可能感兴趣的:(redis,redis)