redis常用的操作:k-v,list,set(set有一般set,hset,zset),在详细介绍这些之前先介绍几种常用的redis命令,希望能有所帮助:
1.auth + pwd 验证进入redis命令
2.flushall(情况整个redis),谨慎使用该命令[类似数据库的drop database]
3.fushdb 清空当前选中库的所有redis命令[类似数据库的drop table]
4.select 选择将要操作的库
1.存值:set(key,value) 默认是永不过期
2.取值:get(key)
3.正则取值:keys("*") (*代表正则表达式)
4. 设置过期时间:expire(key,livetime); (livetime最好写成全局变量这样方便统一)
5. 删除单个:del(key)
1.存值 lpush("key","data") data一般为一个json串.追加到列队左边(头)
rpush(key,data) 追加到列队右边(尾)
2.取值 lpop(key) 取出链表的左边第一个元素,并且删除
rpop(key) 取出链表右边第一个元素,并且删除
lrange(key,begin,end) 取出start到end的元素,end=-1时为取出后面所有
lget(key,index) 取出该list某个位置的值(index为从0开始)
3.特定存值
lset(key,index,data) 设置某个位置的值为data
4.长度判断: llen(key) 返回某个列表长度
lsize 返回列表key长度
1.存值: sadd(key,value) 存入set,key没有则成功,有则返回失败
2.删除: srem(key,value) 删除set中的key
3.判断是否存值某个值:
sIsmember(key,value) 结果返回bool类型值
4.大小判断:
scard(key) 返回该set的大小
1.存值:hset(key,v1,v2) 如果v1存在则替换,不存在则添加
多存:hmset(key, array('name' => 'dom', 'sex' => 1))
2.取值:hget(key,v1) 取值
多取:hmget(key,array('v1', 'vv'))
取key: hKeys(key) 获取该key下的所有元素
3.获取长度:hlen(key) 返回该hash集合长度
4.删除:hdel(key,v1) 删除hash集合中的某个值
5.判断是否存在:hExists(key,v1) 判断集合中是否存在该值
zset对比hash,存值类似,但是zset比hash多了自动排序功能,zset可以根据v1自动排序,默认为顺序排序
常用于做排行榜
1.存值:zadd(key,v1,v2) v1作为排序标准,v2固定参数
2.取值:
倒序:ZREVRANGE(key,start,end,WITHSCORES) end=-1则代表所有
顺序:ZRANGE(key,start,end,WITHSCORES) withscores: 是否输出socre的值
特定取值:zscore(key,v2) 取出v2的score
3.获取长度:zcard(key) 返回该key的长度
4.获取排序号:zrank(key,v2) 获取v2的排序号(顺序)
5.删除:zrem(key,v2) 根据v2删除
6.给指定元素加分:zincrby(key,incrby,v2)
有些不常用的命令没有写出来,欢迎留言指正博文中存在的问题,或交流学习中遇到的问题!