redis数据结构
redis数据结构
strings类型
设置 set name lijie 如果键值存在 ,覆盖原值
获取 get name
setnx 如果键值存在 返回0,如果不存在,设置新植 返回1
setnx name lijie
get name
setex 设置key对应的值是value,并指定有效期
setex haircolor 10 red
get haircolor
setrange 设置
mset 一起设置多个key的值,成功返回ok,
mset key1 lijie key2 lampbrother key3 27
get key1
get key2
get key3
msetnx
get
getset 设置key的新值,并且返回key的旧值
getrange
getrange name 0 5
mget 一次获取多个key的值,如果对应的key不存在,返回空
incr
incr key6
incrby
incrby key6 5
decr
decrby
append 给指定key的字符串追加value,返回新字符串的长度
append name .net
strlen
strlen name
=====================================================
hashes类型
hset 设置hash field为指定值,如果key不存在,则先创建
hset user:001 name lijie
hget
user:001 name
hsetnx 如果key不存在,则先创建,如果存在返回0
hmset
hmset user:003 name lijie age 20 易做图 1
hget user:003 name
hmget
hmget user:003 name age 易做图
hincrby
hincrby user:003 age 5
hexists
hexists user:003 name
hlen
hlen user:003
hdel
hdel user:003 age
hkeys
hkeys user:003
hvals
hvals user:003
hgetall
hgetall user:003
===============================================================
lists类型
lpush 先进后出
lpush list1
lpush list1
lrange
lrange 0 -1
rpush 先进先出
rpush list2 "lijie"
rpush list2 "lamp"
lrange list2 0 -1
linsert
linsert list3 before "world" "hello"
lset
lpush list5 one
lpush list5 two
lpush list5 three
lset list5 1 four
lrange list5 0 -1
lrem
lpush list5 one
lpush list5 one
lrem list5 3 "one"
lrange list5 0 -1
ltrim
lpush list8 one
lpush list8 two
lpush list8 three
lpush list8 four
ltrim list8 1 2
lpop 从头弹出元素
lpop list10
rpop 从尾弹出元素
rpop list10
rpoplpush 从第一个list尾部移除元素并添加到第二个list的头部
lrange list5 0 -1
lrange list6 0 -1
rpoplpush list5 list6
lindex
lindex list5 0
lindex list5 1
llen 返回list的长度
llen list5
============================================================
sets类型
set是集合,它是string类型的无序集合。对集合我们可以取并集、交集、差集。
sadd
sadd myset "one" 返回1
sadd myset "two" 返回1
sadd myset "two" 返回0 ,没有成功
smembers myset
srem 删除集合里面的元素
sadd myset2 "one" 返回1
sadd myset2 "two" 返回1
sadd myset2 "three" 返回1
srem myset2 two
smembers myset2
spop 随机返回并删除一个元素
sadd myset3 "one" 返回1
sadd myset3 "two" 返回1
sadd myset3 "three" 返回1
sadd myset3 "four" 返回1
sadd myset3 "five" 返回1
spop myset3
sdiff
sdiff myset2 myset3 (以myset2为标准)
sdiffstore
sdiffstrore myset5 myset2 myset1 将2与1的差集存到5
sinter 返回交集
sinter myset 1 myset2
sinterstore
sinterstore myset6 myset1 myset2
sunion 返回并集
sunion myset1 myset2
sunionstore
sunionstore myset6 myset1 myset2 (将1与2的并集返回给6)
smove
&