Redis經常使用命令

1.基本命令

  • 查詢當前庫的全部鍵:keys *java

  • 查看某個鍵是否存在:exists <key>數據庫

  • 查看鍵的類型: type keycode

  • 刪除某個鍵:del key排序

  • 爲鍵值設置過時時間:expire <key> <seconds>索引

  • 查看還有多少秒過時(-1永不過時,-2已過時):ttl <key>rem

  • 查看當前數據庫key的數量:dbsize字符串

  • 清空當前庫:flushdbget

  • 清空全部庫:flushallstring


2.String命令

  • 查詢鍵對應的鍵值:get <key>hash

  • 添加鍵值對:set <key> <value>

  • 獲取值的長度:strlen <key>

  • 只有鍵不存在時添加鍵值對:setnx <key> <value>

  • 將key對應的值 +/- 1(只能對數字使用)若是爲空則新增值爲1(-1):incr / decr <key>

  • 將key中存儲的數字遞增/減 (只能對數字使用),自定義步長:incrby / decrby <key> <步長>

  • 同時設置一個或多個鍵值對:mset <key1> <value1> <key2> <value2> ...

  • 同時獲取一個或多個value:mget <key1> <key2> <key3> ...

  • 同時設置一個或多個鍵值對,當且僅當全部給定的key都不存在:msetnx <key1> <value1> <key2> <value2> ...

  • 獲取值的範圍,相似於java的substring,可是包前也包後:getrange <key> <起始位置> <結束位置>

  • 用value覆寫key所儲存的字符串值,從起始位置開始:setrange <key> <起始位置> <value>

  • 設置鍵值的同時設置過時時間:setex <key> <過時時間> <value>

  • 設置新值的同時獲取舊值:getset <key> <value>


3.List命令

  • 從左邊/右邊插入一個或多個值:lpush/rpush <key> <value1> <value2> ...
  • 從左邊/右邊彈出一個值,若是時最後一個值,鍵銷燬:lpop/rpop <key>
  • 從key1列表右邊彈出一個值插到key2列表左邊:rpoplpush <key1> <key2>
  • 按照索引下標得到多個元素(從左到右),尾部是-1:lrange <key> <start> <end>
  • 按照索引下標得到元素(從左到右):lindex <key> <index>
  • 得到列表的長度:llen <key>
  • 在value的前/後面插入newvalue的值(只對從左到右的第一次出現的value有效):linsert <key> before/after <value> <newvalue>
  • n>0時,從左邊開始刪除n個value;n<0時,從右邊開始刪除n個value;n=0時,刪除全部value:lrem <key> <n> <value>

4.set命令

  • 向set中添加元素,已存在的會忽略:sadd <key> <value1> <value2> <value3> ...
  • 得到set裏的全部值:smembers <key>
  • 判斷set裏是否存在某個值,存在返回1,不存在返回0:sismember <key> <value>
  • 返回集合的元素個數:scard <key>
  • 刪除集合中的某些元素:srem <key> <value1> <value2> ...
  • 隨機從集合中彈出多個值,彈出後值在集合中會消失:spop <key> <count>
  • 隨機從集合中取出多個值,取出後值在集合中不會消失:srandmember <key> <count>
  • 返回兩個集合中的交集元素:sinter <key1> <key2>
  • 返回兩個集合中的並集元素:sunion <key1> <key2>
  • 返回兩個集合中的差集元素:sdiff <key1> <key2>

5.hash命令

  • 向集合中的field賦值value:hset <key> <field> <value>
  • 從集合中取出指定field的value:hget <key> <field>
  • 批量向集合中的field賦值value:hmset <key> <field1> <value1> <field2> <value2> ...
  • 查看集合中是否存在指定field的值:hexists <key> <field>
  • 獲取集合中的全部field:hkeys <key>
  • 獲取集合中的全部value:hvals <key>
  • 獲取集合中的全部filed和value:hgetall <key>
  • 爲集合中的指定field的value設置增量(能夠爲負):hincrby <key> <filed> <count>
  • 將集合中的filed的值設置爲value,當且僅當field不存在時生效:hsetnx <key> <field> <value>

6.zset命令

  • 將一個或多個value添加到集合中(相同元素不一樣分數,會把分數更新,相同分數不一樣元素,可以正常排序):zadd <key> <score1> <value1> <score2> <value2> <score3> <value3>...
  • 返回集合中下標在start和end之間value,若是帶WITHSOCORES,能夠帶分數一塊兒返回,順序爲從小到大:zrange <key> <start> <end> [WITHSCORES]
  • 返回集合中下標在start和end之間value,若是帶WITHSOCORES,能夠帶分數一塊兒返回,順序爲從大到小:zrevrange <key> <start> <end> [WITHSCORES]
  • 返回集合中全部score值接域min和max之間(前包後包)的成員。有序集成員按照score值從小到大次序排列:zrangebyscore key min max [withscores]
  • 返回集合中全部score值接域min和max之間(前包後包)的成員。有序集成員按照score值從大到小次序排列:zrevrangebyscore key min max [withscores]
  • 爲集合中的元素增長分數:zincrby <key> <increment> <value>
  • 刪除集合中的指定元素:zrem <key> <value>
  • 統計集合中分數區間內的元素個數:zcount <key> <min> <max>
  • 返回該元素在集合中的排名(能夠判斷元素是否存在集合中):zrank <key> <value>
相關文章
相關標籤/搜索