1.String類型
命令 |
說明 |
案例 |
set |
添加key-value |
set username admin |
get |
根據key獲取數據 |
get username |
strlen |
獲取key的長度 |
strlen key |
exists |
判斷key是否存在 |
exists name 返回1存在 0不存在 |
del |
刪除redis中的key |
del key |
Keys |
用於查詢符合條件的key |
keys * 查詢redis中全部的key keys n?me 使用占位符獲取數據 keys nam* 獲取nam開頭的數據 |
mset |
賦值多個key-value |
mset key1 value1 key2 value2 key3 value3 |
mget |
獲取多個key的值 |
mget key1 key2 |
append |
對某個key的值進行追加 |
append key value |
type |
檢查某個key的類型 |
type key |
select |
切換redis數據庫 |
select 0-15 redis中共有16個數據庫 |
flushdb |
清空單個數據庫 |
flushdb |
flushall |
清空全部數據庫 |
flushall |
incr |
自動加1 |
incr key |
decr |
自動減1 |
decr key |
incrby |
指定數值添加 |
incrby 10 |
decrby |
指定數值減 |
decrby 10 |
expire |
指定key的生效時間 單位秒 |
expire key 20 key20秒后失效 |
pexpire |
指定key的失效時間 單位毫秒 |
pexpire key 2000 key 2000毫秒后失效 |
ttl |
檢查key的剩余存活時間 |
ttl key |
persist |
撤銷key的失效時間 |
persist key |
2.Hash類型
說明:可以用散列類型保存對象和屬性值
例子:User對象{id:2,name:小明,age:19}
命令 |
說明 |
案例 |
hset |
為對象添加數據 |
hset key field value |
hget |
獲取對象的屬性值 |
hget key field |
hexists |
判斷對象的屬性是否存在 |
HEXISTS key field 1表示存在 0表示不存在 |
hdel |
刪除hash中的屬性 |
hdel user field [field ...] |
hgetall |
獲取hash全部元素和值 |
HGETALL key |
hkyes |
獲取hash中的所有字段 |
HKEYS key |
hlen |
獲取hash中所有屬性的數量 |
hlen key |
hmget |
獲取hash里面指定字段的值 |
hmget key field [field ...] |
hmset |
為hash的多個字段設定值 |
hmset key field value [field value ...] |
hsetnx |
設置hash的一個字段,只有當這個字段不存在時有效 |
HSETNX key field value |
hstrlen |
獲取hash中指定key的長度 |
HSTRLEN key field |
hvals |
獲取hash的所有值 |
HVALS user |
3.List類型
說明:Redis中的List集合是雙端循環列表,分別可以從左右兩個方向插入數據.
List集合可以當做隊列使用,也可以當做棧使用
隊列:存入數據的方向和獲取數據的方向相反
棧:存入數據的方向和獲取數據的方向相同
命令 |
說明 |
案例 |
lpush |
從隊列的左邊入隊一個或多個元素 |
LPUSH key value [value ...] |
rpush |
從隊列的右邊入隊一個或多個元素 |
RPUSH key value [value ...] |
lpop |
從隊列的左端出隊一個元素 |
LPOP key |
rpop |
從隊列的右端出隊一個元素 |
RPOP key |
lpushx |
當隊列存在時從隊列的左側入隊一個元素 |
LPUSHX key value |
rpushx |
當隊列存在時從隊列的右側入隊一個元素 |
RPUSHx key value |
lrange |
從列表中獲取指定返回的元素 |
LRANGE key start stop Lrange key 0 -1 獲取全部隊列的數據 |
lrem |
從存於 key 的列表里移除前 count 次出現的值為 value 的元素。 這個 count 參數通過下面幾種方式影響這個操作:
|
LREM list -2 “hello” 會從存於 list 的列表里移除最后兩個出現的 “hello”。 需要注意的是,如果list里沒有存在key就會被當作空list處理,所以當 key 不存在的時候,這個命令會返回 0。 |
Lset |
設置 index 位置的list元素的值為 value |
LSET key index value |
4.redis事務命令
說明:redis中操作可以添加事務的支持.一項任務可以由多個redis命令完成,如果有一個命令失敗導致入庫失敗時.需要實現事務回滾.
命令 |
說明 |
案例 |
multi |
標記一個事務開始 |
127.0.0.1:6379> MULTI OK |
exec |
執行所有multi之后發的命令 |
127.0.0.1:6379> EXEC OK |
discard |
丟棄所有multi之后發的命令 |
|