1.基本命令
-
查詢當前庫的所有鍵:
keys * -
查看某個鍵是否存在:
exists <key> -
查看鍵的型別:
type key -
洗掉某個鍵:
del key -
為鍵值設定過期時間:
expire <key> <seconds> -
查看還有多少秒過期(-1永不過期,-2已過期):
ttl <key> -
查看當前資料庫key的數量:
dbsize -
清空當前庫:
flushdb -
清空所有庫:
flushall
2.String命令
-
查詢鍵對應的鍵值:
get <key> -
添加鍵值對:
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>
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/1137.html
標籤:NoSQL
