redis字符串用法

Tstring
设置key及值,过期时间可以使用秒或毫秒为单位
setrange key offset value
192.168.4.56:6356> set x 9 ex 10 //单位秒
OK
192.168.4.56:6356>
192.168.4.56:6356> set y 29 px 10 //单位毫秒
OK
192.168.4.56:6356>
192.168.4.56:6356> set y 39 NX //不存在赋值
OK
192.168.4.56:6356> get y //变量值没变
“39”
192.168.4.56:6356>
192.168.4.56:6356> set y 49 xx //变量存在赋值
OK
192.168.4.56:6356> get y //变量变了
“49”
192.168.4.56:6356>
2) 从偏移量开始复写key的特定位的值
192.168.4.51:6351> set first “hello world”
OK
192.168.4.51:6351> setrange first 6 “Redis” //改写为hello Redis
(integer) 11
192.168.4.51:6351> get first
“hello Redis”
3) strlen key,统计字串长度
192.168.4.51:6379> strlen first
(integer) 11
4) append key value 存在则追加,不存在则创建key及value,返回key长度
192.168.4.51:6379> append myname jacob
(integer) 5
5) setbit key offset value 对key所存储字串,设置或清除特定偏移量上的位(bit),value值可以为1或0,offset为0~2^32之间,key不存在,则创建新key
192.168.4.51:6379> setbit bit 0 1 //设置bit第0位为1
(integer) 0
192.168.4.51:6379> setbit bit 1 0 //设置bit第1位为0
(integer) 0
6) bitcount key 统计字串中被设置为1的比特位数量
192.168.4.51:6379> setbit bits 0 1 //0001
(integer) 0
192.168.4.51:6379> setbit bits 3 1 //1001
(integer) 0
192.168.4.51:6379> bitcount bits //结果为2
(integer) 2
记录网站用户上线频率,如用户A上线了多少天等类似的数据,如用户在某天上线,则使用setbit,以用户名为key,将网站上线日为offset,并在该offset上设置1,最后计算用户总上线次数时,使用bitcount用户名即可,这样即使网站运行10年,每个用户仅占用10*365比特位即456字节
192.168.4.51:6379> setbit peter 100 1 //网站上线100天用户登录了一次
(integer) 0
192.168.4.51:6379> setbit peter 105 1 //网站上线105天用户登录了一次
(integer) 0
192.168.4.51:6379> bitcount peter
(integer) 2
7) decr key 将key中的值减1,key不存在则先初始化为0,再减1
192.168.4.51:6379> set z 10
OK
192.168.4.51:6379> decr z
(integer) 9
192.168.4.51:6379> decr z
(integer) 8
192.168.4.51:6379> decr bb
(integer) -1
192.168.4.51:6379> decr bb
(integer) -2
8) decrby key decrement 将key中的值,减去decrement
192.168.4.51:6379> set count 100
OK
192.168.4.51:6379> DECRBY cc 20 //定义每次减少20(步长)
(integer) -20
192.168.4.51:6379> DECRBY cc 20
(integer) -40
9) getrange key start end 返回字串值中的子字串,截取范围为start和end,负数偏移量表示从末尾开始计数,-1表示最后一个字符,-2表示倒数第二个字符
192.168.4.51:6379> set x 123456789
OK
192.168.4.51:6379> getrange x -5 -1
“56789”
192.168.4.51:6379> getrange x 0 4
“12345”
10) incr key 将key的值加1,如果key不存在,则初始为0后再加1,主要应用为计数器
192.168.4.51:6379> set page 20
OK
192.168.4.51:6379> incr page
(integer) 21
11) incrby key increment 将key的值增加increment
192.168.4.51:6379> set x 10
OK
192.168.4.51:6379> incr x
(integer) 11
192.168.4.51:6379> incr x
(integer) 12
12) incrbyfloat key increment 为key中所储存的值加上浮点数增量 increment
192.168.4.51:6379> set num 16.1
OK
192.168.4.51:6379> incrbyfloat num 1.1
“17.2”

hash表

1)hset key field value 将hash表中field值设置为value
192.168.4.51:6379> hset site google ‘www.g.cn’
(integer) 1
192.168.4.51:6379> hset site baidu ‘www.baidu.com’
(integer) 1
2) hget key filed 获取hash表中field的值
192.168.4.51:6379> hget site google
“www.g.cn”
3) hmset key field value [field value…] 同时给hash表中的多个field赋值
192.168.4.51:6379> hmset site google www.g.cn baidu www.baidu.com
OK
4) hmget key field [field…] 返回hash表中多个field的值
192.168.4.51:6379> hmget site google baidu

  1. “www.g.cn”
  2. “www.baidu.com”
  3. hkeys key 返回hash表中所有field名称
    192.168.4.51:6379> hmset site google www.g.cn baidu www.baidu.com
    OK
    192.168.4.51:6379> hkeys site
  4. “google”
  5. “baidu”
  6. hgetall key 返回hash表中所有key名和对应的值列表
    192.168.4.51:6379> hgetall site
  7. “google”
  8. “www.g.cn”
  9. “baidu”
  10. “www.baidu.com”
  11. hvals key 返回hash表中所有key的值
    192.168.4.51:6379> hvals site
  12. “www.g.cn”
  13. “www.baidu.com”
  14. hdel key field [field…] 删除hash表中多个field的值,不存在则忽略
    192.168.4.51:6379> hdel site google baidu
    (integer) 2

list 列表

  1. lpush key value [value…] 将一个或多个值value插入到列表key的表头,Key不存在,则创建key
    192.168.4.51:6379> lpush list a b c //list值依次为c b a
    (integer) 3
  2. lrange key start stop 从开始位置读取key的值到stop结束
    192.168.4.51:6379> lrange list 0 2 //从0位开始,读到2位为止
  3. “c”
  4. “b”
  5. “a”
    192.168.4.51:6379> lrange list 0 -1 //从开始读到结束为止
  6. “c”
  7. “b”
  8. “a”
    192.168.4.51:6379> lrange list 0 -2 //从开始读到倒数第2位值
  9. “c”
  10. “b”
  11. lpop key 移除并返回列表头元素数据,key不存在则返回nil
    192.168.4.51:6379> lpop list //删除表头元素,可以多次执行
    “c”
    192.168.4.51:6379> LPOP list
    “b”
  12. llen key 返回列表key的长度
    192.168.4.51:6379> llen list
    (integer) 1
  13. lindex key index 返回列表中第index个值
    192.168.4.51:6379> lindex list 1
    “c”
  14. lset key index value 将key中index位置的值修改为value
    192.168.4.51:6379> lpush list a b c d
    (integer) 5
    192.168.4.51:6379> lset list 3 test //将list中第3个值修改为test
    OK
  15. rpush key value [value…] 将value插入到key的末尾
    192.168.4.51:6379> rpush list3 a b c //list3值为a b c
    (integer) 3
    192.168.4.51:6379> rpush list3 d //末尾插入d
    (integer) 4
  16. rpop key 删除并返回key末尾的值
    192.168.4.51:6379> RPOP list3
    “d”
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值