redis非关系数据库

Redis 非关系数据库
redis 是一种nosql 数据库,可以把内存数据同步到磁盘,可以把数据持久化。
redis 数据类型分为五种{
1 字符串 string 2 列表 list 3集合 set 4 哈希 hash
5 zset 有序集合
}
语法结构为 {key value}键值对
1 添加 set key value 将字符串的值value 关联到key。
如果 key 已经持有其他值 ,set 命令会将其覆盖,无视其类型,默认是永久
2 删除 del key 比如 del name
3 设置过期时间
expire key timeout(单位为秒),也可以设置值的时候,一同指定过期时间
set key value EX timeout(值)
或 setex key timeout value
4 查看过期时间
ttl key 比如 ttl name
5 查看当前redis所有的key
keys *
6 列表操作
在列表左边添加元素
lpush key value
在列表右边添加元素
rpush key value
查看列表中的元素
lrange key start stop
移除并返回列表key的头元素
lpop key
移除并返回列表key的尾元素
rpop key
7 指定返回的第几个元素
lindex key index (index 为索引)
8 获取列表中的元素个数
llen key 比如 llen languages
9 删除指定的元素
lrem key count value 如 lrem languages 0 php
set 集合操作
1 sadd set value1 value2 sadd daming xiaoming
2 查看元素
smembeers set 如 smembeers xiaoming
3 移除元素
srem set member.. 如 srem set xiaoming
4 查看集合中的元素个数
scard set 如 scard xiaoming
5 获取多个集合的交集:
sinter set1 set2
如:
sinter team1 team2
6 获取多个集合的并集:
sunion set1 set2
如:
sunion team1 team2
7 获取多个集合的差集:
sdiff set1 set2
如:
sdiff team1 team
hash 哈希操作
1 添加一个新值:
set key field value
如:
hset website baidu baidu.com
将哈希表key中的域field的值设为value。
如果key不存在,一个新的哈希表被创建并进行 HSET操作。如果域 field已经存在于哈希表中,旧值将被覆盖。
2 获取哈希中的field对应的值:
hget key field
如:
hget website baidu
3 删除field中的某个field:
hdel key field
如:
hdel website baidu
4 获取某个哈希中所有的field和value:
hgetall key
如:
hgetall website
5 获取某个哈希中所有的field:
hkeys key
如:
hkeys website
6 获取某个哈希中所有的值:
hvals key
如:
hvals website
7 判断哈希中是否存在某个field:
hexists key field
如:
hexists website baidu
8 获取哈希中总共的键值对:
hlen field
如:
hlen website
redis 事务执行
exec会将在multi和exec中的操作一并提交。
取消事务
discard 会将multi 后的所有命令取消

posted @ 2019-03-09 10:49  枕上书的故事  阅读(309)  评论(0编辑  收藏  举报