-----------------------------------字符串类型--------------------------------------------------
表示将key对应的字符串存储起来
set key value
eg:
set name nihao
---------------------------
获取key对应的值
get key
eg:
get name
----------------------------
多个键值对保存
mset key1 v1 key1 v2 key3 v3
eg:
mset name zhangsan age 18 gander nan address shanghai
----------------------------
获取多个key对应的值
mget key1 key2 key3
eg:
mget name age gander address
-----------------------------------
设置一个key,seconds秒后失效
setex key seconds value
eg:
setex nikename 10 xiaohua
----------------------------------
将key对应的值加一,注意:只能是数字字符串
incr key
eg:
incr age
-----------------------------------
将key对应的值加number
incrby key number
eg:
incrby age 100
-----------------------------------
将key对应的值减一
decr key
eg:
decr age
------------------------------------
将key对应的值减number
decrby key number
eg:
decrby age 100
------------------------------------
求key对应的长度
strlen key
eg:
strlen name
--------------------------------------
对key的值末尾进行追加
append key value
eg:
append address now
----------------------------------------------
将key对应的值的offset位置开始替换为value
setrange key offset value
eg:
setrange age 7 pudongxinqu
----------------------------------------------
获取key对应的值的区间值
getrange key start end
eg:
getrange age 0 1
----------------------------------------------
判断是否存在key,如果不存在,则增加
setnx key value
eg:
setnx name xiugai
----------------------------------------------
-----------------------------key操作----------------------------------------------------
查询当前数据库下的所有key
keys *
-------------------------------------------
判断key是否存在
exists key
eg:
exists name
-------------------------------------------
判断key对应的值的类型
type key
eg:
type name
-------------------------------------------
删除key
del key
eg:
del age
-------------------------------------------
为一个存在的key设置失效时间
expire key seconds
eg:
expire list1 10
-------------------------------------------
查看某个key的失效时间 -1 永久有效 -2 失效 正数表示正在失效的时间秒数
ttl key(Time To Live)
eg:
ttl gander
-------------------------------------------
取消key的失效,让它永久有效
persist key
eg:
persist level
-------------------------------------------
切换数据库
select index
eg:
select 1
-------------------------------------------
将当前数据库的key移动到对应数据库下
move key index
eg:
move address 1
-------------------------------------------
返回当前数据库下key的数量
dbsize
-------------------------------------------
查询当前数据的信息
Info
-------------------------------------------
清空当前数据库 (慎用)
flushdb
-------------------------------------------
清空所有的数据库(慎用)
flushall
-----------------------------哈希操作----------------------------------------------------
保存一个对象的属性和值
hset key field value
eg:
hset h1 name xiaoli
------------------------------------------
通过对象的属性获取值
hget key field
eg:
hget h1 name
------------------------------------------
保存一个对象的多个属性和值
hmset key f1 v1 f2 v2……
eg:
hmset h1 age 18 address hangzhou gander nv
------------------------------------------
通过对象的多个属性获取值
hmget key f1 f2
eg:
hmget age address gander
------------------------------------------
获取对象的所有属性和值
hgetall key
eg:
hgetall h1
------------------------------------------
获取对象的所有属性名称
hkeys key
eg:
hkeys h1
------------------------------------------
获取对象的所有属性的值
hvals key
eg:
hvals h1
------------------------------------------
获取对象的属性个数
hlen key
eg:
hlen h1
------------------------------------------
查询对象是否存在某个属性
hexists key field
eg:
hexists h1 name
------------------------------------------
删除对象的某个属性
hdel key field
eg:
hdel h1 gander
------------------------------------------
查询对象的属性的值的长度
hstrlen key field
eg:
hstrlen h1 name
------------------------------------------
-----------------------------列表的操作----------------------------------------------------
redis的list是一个队列和栈 字符串 的实现
# 从左侧压入数据到list中
lpush key value1 value2……
eg:
lpush name zhangsan lisi wangwu qianliu
------------------------------------------
# 从右侧压入数据到list中
rpush key value1 value2……
eg:
rpush name zhangsan lisi wangwu qianliu
------------------------------------------
# 从左侧start位置开始循环展示数据,到end结束
lrange key start end
eg:
lrange name 0 10
------------------------------------------
# 在一个元素前/后插入数据
linsert key before|after pivot value:
eg:
linsert adress before lisi shanghai
------------------------------------------
# 移除第一个元素
lpop key
eg:
lpop name
------------------------------------------
# 移除最后一个元素
rpop key
eg:
rpop name
------------------------------------------
# 获取list的元素个数
llen key
eg:
llen name
------------------------------------------
# 获取在key索引对应的值
lindex key index
eg:
lindex name 1
------------------------------------------
# 截取list,从start位置开始,到end结束
ltrim key start end
eg:
ltrim u1 0 3
------------------------------------------
# 删除value元素,count个
lrem key count value
eg:
lrem name 1 lisi
------------------------------------------
-----------------------------set的操作----------------------------------------------------
将v1,v2……添加到set中
sadd key value1 value2……
eg:
sadd name1 zhangsan zhangsi lisan lisi haha
sadd name2 zhangsan haha qian laohuang
-----------------------------------------
展示set中所有元素
smembers key
eg:
smembers name1
-----------------------------------------
判断value在不在key中,返回1表示存在
sismember key value
eg:
sismember name1 zhangsi
-----------------------------------------
返回set的元素个数
scard key
eg:
scard name1
-----------------------------------------
获取多个集合 交集
sinter key [key]:
eg:
sinter name1 name2
-----------------------------------------
获取多个集合的差集,集合1和集合2的差集与集合2和集合1的差集是不同的
sdiff key [key]:
eg:
sdiff name2 name1
-----------------------------------------
获取多个集合的并集
sunion key [key]:
eg:
sunion name1 name2
-----------------------------------------
移除元素
srem key member
eg:
srem name1 zhangsi
-----------------------------------------
随机移除元素
spop key [count]
eg:
spop name1
-----------------------------------------
将差集保存成一个新的set
sdiffstore newkey key1 key2
eg:
sdiffstore name3 name2 name1
-----------------------------------------
随机获取一个元素
srandmember key
eg:
srandmember name1
-----------------------------------------
-----------------------------zset(有序存储多个数据)的操作----------------------------------------------------
添加多个带权重的数据到set集合中
zadd key score value2 [score value2]
eg:
zadd z1 25 lisi 30 wangwu 10 qianliu 50 zhangsan
----------------------------------------
遍历展示数据
zrange key start end
eg:
arange z1 0 10
----------------------------------------
返回set的元素个数
zcard key
eg:
zcard z1
----------------------------------------
返回score值在min与max 之间的数据的个数
zcount key min max
eg:
zcount z1 10 30
----------------------------------------
返回集合中元素的score值
zscore key
eg:
zscore z1 lisi
----------------------------------------