您的位置:首页 > 数据库 > Redis

redis常用命令

2017-08-03 09:57 344 查看
1、string类型:
                          set、get添加键值对获得键值对、如果多次赋值会覆盖掉原来的value
                          setnx会自动判断是否存在,如果存在返回0不存在返回1,并且不会覆盖原来的value
                          setex设置失效时间(毫秒) setex color 10 red  (验证码等)
                          setrange设置第几个开始替换setrange email 6 163.com
                          mset 设置多个key-value mset k1 v1 k2 v2
                          msetnx具体情况和setnx类似,设置多个的时候返回成功的个数
                          getset设置一个key的value并且返回一个key的原来的值
                          getrange返回第几个到第几个getrange email 0 5
                          mget 获得多个key-value的值 mget k1 k2
                          incr自动步增incr key6  
                          incrby自动规定步增incrby key6 5、incrby key6 -5
                          decr同上自减
                          decrby同上自减
                          append指定的key追加value,返回生成字符串长度
                          strlen查看字符串长度
2、hashes类型:相对较节省空间(具体的意思同上) ://哈希表 用户信息,小明开始没有电话,后来有电话,对于不定的属性,可以用hash保存。
hset user1 name jim
hset user1 age 12
hset user1 phone 18118181818
                         hset user1 username admin 设置key 可以覆盖
                         hsetnx user2 username admin 设置不重复keys
                         hmset user3 username admin password admin age 2 state 2  多个设置
                         hmget user3 username password age state 多个获得
                         hincrby user3 age 19 自增
                         hexists user3 username 查看字段是佛存在
                         hlen user3 查看hash的长度
                         hdel user3 age 删除hash里面对应的名字的value
                         hkeys user3 返回所有的keys
                         hvals user3  返回所有的values
                         hgetall user3 同时返回keys的values
3、lists类型(相对于队列和栈) 双向链表  列表从的Index从0开始
                         lpush mylistname1 2 3 放入 、先进后出
                         lrange mylistname 0 -1从0取到尾
                         rpush mylistname1 2 3 放入 、先进先出
                         lrange mylistname 0 -1从0取到尾
                         linsert mylistname before one two 从尾到顶元素的之前插入,有before和after两种
                         lset mylistname 0 four 改变下标为0的元素、对于lpush内容是从上向下递增标注下标的
                         lrem mylistname 2 two 在mylistname这个list中删除value为two的两个数据
                         ltrim mylistname 1 -1 保留mylistname里面从第一个元素到第二个元素的内容、别的元素全部删除
                         lpop mylistname 从头部弹出元素
                         rpop mylistname 从尾部弹出一个元素    
                         rpoplpush mylistname1 mylistname2 从第一个尾部弹出一个元素放入第二个头部
                         lindex mylistname 1 取得索引value
                         llen mylistname 取得list的长度
                         sadd mysetname values1 插上set里面的value
                         smembers mysetname 查看mysetname里面的value
                         srem mysetname values1 删除values1 的值
                         spop mysetname 随即弹出一个数
 4、sets集合(交、并、差)共同好友--集合交,点赞点亮--sismemenber
                         sdiff mysetname1 mysetname 2 返回两个set的差集谁在前面把谁作为参照物
                         sdiffstore mysetname3 mysetname2 mysetname1 把2 和1 的不同存入到3中
                         sinter mysetname1 mysetname2 返回两个set的交集
                         sinterstore mysetname3 mysetname2 mysetname1 返回两个set的交集放到3里面
                         sunion mysetname2 mysetname1 返回两个set的并集
                         sunionstore mysetname3 mysetname2 mysetname1 返回两个set的并集,存储到3中、关键在上面的这些操作都可以有≥两个参数
                         smove mysetname1 mysetname2 three 把1中的three元素剪切到2中
                         scard mysetname 返回set里面的元素个数
                         sismember mysetname one 判断one是不是集合的元素
                         srandmember mysetname 随即返回一个元素
5、sorted sets 有序集合(优先队列) 排行榜、排名
                         zadd myzsetname 1 one插入有序集合,并且指定顺序
                         zrange myzsetname 0 -1 [withscores] 全部取出,并且显示顺序号   取出前几名(从小到大) 排行榜
     zrevrange 取出前几名 排行榜 
                         zrem myzsetname one 删除元素
                         zincrby  myzsetname 2 one 添加元素,自动增长
                         zrank myzsetname one 根据索引从小到大排序,然后显示索引值(这个可以做访问量什么的排名之类的)
                         zrevrank myzsetname one 和上面的意思一样,但是是scores从打到小排序
                         zrangebyscore myzsetname 0 -1 withscores 从一定区间里面按照scores返回
                         zcount myzsetname2 3 返回2 3中间的所有的数量
                         zremrangebyrank myzsetnage 2 3 删除2 和3 位置,按照索引来删除
 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: