型別
簡介特性
場景string(字串)
二進位制安全
可以包含任何資料,比如jpg或者序列化物件
一般情況下,開發中使用頻率最高,常儲存普通的key,如限流、商品資訊等較固定的zhi
hash(字典)
鍵值對集合,即程式語言中的map型別
適合儲存物件,並且可以像資料庫中的update乙個屬性一樣只修改某一項屬性值
儲存、讀取、修改使用者屬性
list(列表)
鍊錶(雙向鍊錶)
增刪快,提供了操作某一元素的api
最新訊息排行;訊息佇列
set(集合)
hash表實現,元素不重複
新增、刪除、查詢的複雜度都是o(1),提供了求交集、並集、差集的操作
共同好友;利用唯一性,統計訪問**的所有ip
sorted set(有序集合)
將set中的元素增加乙個權重引數score,元素按score有序排列
資料插入集合時,已經進行了天然排序
排行榜;帶權重的訊息佇列
ps:字串值最大值為512m
增:set key value
查:get key
刪:del key
增:mset key value [key1 value1]
查:mget key [key1]
strlen key //獲取字串長度
setnx key value //不存在就設定,存在就不設定
incr key //自增 1
incrby key num //給key的值增加num(int 型別),num 正數則為加,num 為負數 則為減
incrbyfloat key num //給key的值增加num(float 型別)
decr key //自減 1
decrby key num //給key的值減num
setex key second value //設定key的值為value存活時間為second秒
psetex key millisecond value //設定key的值為value存活時間為millisecond毫秒
hash型別的value只能存字串,不允許再巢狀其他型別,如果資料為空則為nil
每個hash可以儲存2 32 − 1 2^-1232−1個鍵的值對
hash型別十分貼近物件的資料儲存,並且可以靈活新增、刪除物件屬性。但hash型別設計並不是存在量而設計的,切記不可濫用,更不可將hash作為物件列表使用
hgetall操作可以獲取全部屬性,如果內部field過多,遍歷整體資料時效率會降低,很有可能成為資料訪問的瓶頸
增:hset key field value
查:hget key field
刪:hdel key field
增:hmset key field value [field1 value2]
查:hmget key field [field1]
hgetall key //獲取key的全部的值
hlen key //獲取key的值的數量
hexists key field //是否存在field
hkeys key //所有key的字段(field)
hvals key //所有key的值
hincrby key field num //給key的field的值增加num (num 為int值)
hincrybyfloat key field num //給key的field的值增加num (num 為float)
hsetnx key field value //存在不設定,不存在設定
list中儲存的資料都是string,資料總量是有限的,最多2 32 − 1 2^-1232−1個元素
list具有索引的概念,但是運算元據時通常以佇列的形式進行入隊出隊操作(或以棧的形式進行入棧出棧操作)
當stop的值為-1時,獲取的是全部資料
list對資料進行分頁操作,通常第一頁的資料使的資訊來自list,其他頁面的資料通過資料形式進行載入
新增
lpush key value [value1] //從左新增
rpush key value [value1] //從右新增
獲取lrange key start stop
lindex key index
llen key
獲取並移除
lpop key //從左出
rpop key //從右出
案例結果
lpush list a b c
結果:c b a
******************************=
rpush list a b c
結果:a b c
******************************=
list=[a b c]
lpop list
結果:b c
******************************=
list=[a b c]
rpop list
結果:a b
******************************=
增:sadd key member [member1]
查:smembers key
刪:srem key member [member1]
獲取總量:scard key
判定是否存在:sismember key member
隨機獲取(原集合保留):srandmember key [count]
隨機獲取(原集合不保留):spop key
集合交集:sinter key key1 key2
集合並集:sunion key key1 key2
集合差集:sdiff key key1 key2
儲存集合交集:sinterstore destination key key1 key2
儲存集合並集:sunionstore destination key key1 key2
儲存集合差集:sdiffstore destination key key1 key2
集合元素移動:smove source destination member
增:zadd key score member [score1 member1]
刪:zrem key member [member1]
獲取全部(正序):zrange key start stop [withscores]
獲取全部(倒序):zrevrange key start stop [withscores]
按條件查(正序):zrangebyscore key min max [withscore limit]
按條件查(倒序):zrevrangebyscore key max min [withscore limit]
按條件刪除(索引):zremrangebyrank key start stop
按條件刪除(積分):zremrangebyscore key min max
獲取集合總量:zcard key | zcount key min max
儲存集合交集: zinterstore destination numkeys key key1
儲存集合並集:zunionstore destination numkeys key key1
獲取索引(正序):zrank key member
獲取索引(倒序):zrevrank key member
score值獲取:zscore key member
score值修改:zincrby key num member
string存在物件講究整體性,以讀為主
hash儲存物件講究分散性,以寫為主
刪除:del key
判斷是否存在:exists key
獲取key型別:type key
指定有效期:
expire key seconds
pexpire key milliseconds
expireat key timestamp
pexpireat key milliseconds-timestamp
獲取有效期:
ttl key
pttl key
設定永久:persist key
查詢key:key pattern //*,?,
重新命名:rename key newkey | renamenx key newkey
對key排序:sort
選擇資料庫:select index
資料移動:move key db
資料庫大小:dbsize
資料清除:
單庫刪除:flushdb
多庫刪除:flushall
PhoneGap開發總結 乾貨
1.因為是 web頁面,長按住某乙個文字區域會彈出複製選擇框 android 4.0 可以通過 遮蔽 body 2.通過html標籤移除快取的影響 3.通過 active偽類來實現 按鈕 按下的樣式切換 4.通過 給按鈕新增震動 提高使用者使用感受 vibrate bind tap function...
大學總結LINUX(乾貨)
常用的命令 類似unix的作業系統 源 完全公開 1.真正的 多使用者多工 2.良好的相容性 3.強大的可移植性 4.高度的穩定性 5.漂亮的使用者介面 1.免費的 開源 2.支援多執行緒 多使用者 3.安全性好 4.對記憶體和檔案管理優越 linux的核心版本號由3個數字組成,為x.y.z形式。其...
flex布局總結 乾貨
2009年,w3c提出了一種新的方案 flex布局,可以簡便 完整 響應式地實現各種頁面布局。目前,它已經得到了所有瀏覽器的支援,這意味著,現在就能很安全地使用這項功能。flex是flexible box的縮寫,意為 彈性布局 用來為盒狀模型提供最大的靈活性。任何乙個容器都可以指定為flex布局。b...