Redis語法
1.string
- select db 選擇數據庫(0-20)
- set k v 設置一個數據
- set k1 v nx nx僅僅可以新建的時候進行插入數據
- set k2 v xx xx僅僅可以更新的時候進行更新數據
- mset k1 v1 k2 v2 可以進行設置多個值
- get k 返回一個v,沒有返回nil
- mget k1 k2 k3 獲取多個v
- getrange k start end 獲取一個索引從start到end,雙閉合的區間
- setrange k start value 更新區間范圍,我們可以從start的索引開始,更新value數據
- del key 刪除一條kv數據
- keys pattern 用正則查詢key
- flushdb 清空db
- help @string 查詢string相關幫助信息
- append k v 給k的數據進行追加v這個數據
- type k 查看value是什么類型
- object encoding k 查看v的數據類型
- incr k1 將integer的數據類型加一
- incrby k1 v 將integer數據類型加v
- decr k1 將integer的數據類型減一
- decrby k1 v 將integer數據類型減v
- incrbyfloat k1 v 將integer數據類型加一個浮點型
- 數據不夠長的時候編碼是embstr,之后會變為raw格式
- strlen k1 查看v的長度
- redis-cli --raw 進行進入,會識別編碼(比如自動識別GBK)
- getset k1 v 更新新值,返回舊值
- bitpos key bit [start] [end] 查看從start到end的字節,第一次bit出現的位置
- bitcount key [start] [end] 查看start到end的時候,1出現的次數
- bitop and andkey k1 k2 執行k1 k2 按位與操作
- bitop or orkey k1 k2 按位或操作
2.list
- lpush、lpop、rpush、rpop 和棧一樣
- lrange 0 -1 所有元素查看
- lindex key index 查看索引位置的值
- lrem key count value 移除count數量的value
- linsert key after afval value 在鍵后面插入值
- linsert key before befval value 在key前面插入值
- blpop 阻塞式取值(等待有值再取出)
- ltrim key [start] [end] 修剪,進行修剪隊列
3.hash
- hset key filed value 設置一個key field的值
- hget key field 獲得一個key field的值
- hmset key field value field value 設置多個field的值
- hmget key field fied 獲取多個field的值
- hkeys key 查看所有的key
- hvals key 查看所有的field
- hincrby key field num 增加num值
4.set
- sadd key v1 v2 v3... 插入v1,v2,v3...
- smember key 列出所有的value
- srem v1 v2 刪除v1,v2...
- sinter k1 k2 求交集並返回
- sinterstore dest k1 k2 交集結果存儲dest
- sunion k1 k2 求並集返回
- sunionstore dest k1 k2 並集存儲dest
- sdiff k1 k2 求差集並返回
- sdiffstore dest k1 k2 求差集存儲dest
- srandmember k1 隨機返回一個成員
- srandmember k1 num 隨機返回num個元素,num為正數,取出一個去重結果集,如果為負數,那么取出不去重結果集
5.zset
-
zadd k score mem score mem 插入數據后增加權重
-
zrange k 0 -1 取出所有的值
-
zrangebyscore k low high 取出從low到high區間的數據
-
zrange k start end 從start到end之間的數據取出
-
zscore k v 返回一個數據的分值
-
zscore k v 返回一個數據的排行
-
zrange k 0 -1 withscores 攜帶分數取出
-
zincrby k incrscore v 增加一個值的分值
-
zunionstore k keynum k1 k2..[aggregate max] 多個key的並集[最大值]