1. string redis 中的string用於存放長字符串信息。和java中string是一致的。
向數據庫添加數據:
- set key value 向數據庫添加數據
- get key 獲取指定key的值
- 使用set設值,如果key不存在,那么將會覆蓋之前的值
- setnx(not exists) key value .如果key不存在,那么設值,返回1,如果key存在 返回0,不進行設值。
- setex(expired)key time(s) value.設置key的value,並且在指定的time秒后失效,失效后返回nil(空)
- incr(increase) key 如果key是integer,那么為其自增1
- decr(decrease) key 如果key是integer,那么為其自減1
- incrby key n 如果key是integer,為其加上n
- decrby key n 如果key是integer,為其減去n
- strlen key 返回key的字符串長度
- getrange key start end 返回指定的下標字符串的值 范圍是[start,end]
- mset k1 v1 k2 v2 k3 v3 通過mset一次性可以設置多個值
- mget k1 k2 獲取多個值
- append key value 為指定key追加value,如果key不存在,那么新增一個key,值為value.
- del key刪除
2. hash redis hash 是一個string類型的field和value的映射表,hash特別適合 存儲對象。
- hset key field value 可以理解key為對象名 field為屬性 value為屬性值
- hget key field 獲取指定key的field的值
- hmset key field1 value1 field2 value2 為指定的key設置多個field及其值
- hmget key field1 field2 獲取指定key的field1和field2的值
- hkeys key 獲取指定key的所有的field
- hvals key 獲取指定key的所有的field的值
- hdel key field1 [field2] 刪除指定key的一個或多個field
- hexists key field 檢查指定的key的field是否存在,如果存在返回1,如果不存在返回0
- hgetall key 返回指定key的所有的field和field的value.
- hlen key 返回指定key的field的個數
- del key
3.list Redis 列表是簡單的字符串列表,按照插入順序排序。你可以添加一個元素列表的頭部(左部)或者尾部(右部)一個列表最多可以包含232-1個元素(4294967295, 每個列表超過40億個元素)。
- lpush key value1 [value2] 向指定的key列表頭中添加一個或者多個value
- lpop key 移除並且獲取指定key列表中的第一個元素
- rpush key value1 [value2] 向指定的key列表的尾部添加一個或者多個value
- rpop key 移除並且獲取指定key列表中的最后一個元素
- lindex key index 獲取指定key列表的下標為index的元素。Index從0開始
- linsert key before|after currentElement insertElement 在指定key列表中的currentElement(當前元素)的前或者后插入指定(insertElement)元素
- llen key 返回指定key列表中的元素個數
- lrange key start stop 返回指定key列表中的的[start,end]范圍中的元素
- lset key index value 為指定key列表替換指定下標index的值為value
- ltrim key start end 對一個列表進行修剪(trim),就是說,讓列表只保留指定區間內的元素,不在指定區間之內的元素都將被刪除。
4.set: Redis的Set是String類型的無序集合。集合成員是唯一的,這就意味着集合中不能出現重復數據。Redis中集合是通過哈希表實現的,所以添加,刪除,查找的復雜度都是0(1)。集合中最大的成員數為 232 - 1(4294967295,每個集合可存儲40多億個成員)
- sadd key m1 m2 [m3] 為指定的key集合添加一個或者多個成員
- smembers key 返回指定key集合的成員
- scard key 返回指定key集合的元素個數
- spop key 移除並返回指定key集合中的隨機一個元素
- sdiff key1 key2 返回key1集合和key2集合的差集
- sdiffstore key3 key1 key2 返回key1集合和key2集合的差集,並將差集存入key3
- sinter key1 [key2] 返回所有集合的交集
等。
5. sorted set(zset)
Redis有序集合和集合一樣,也是string類型元素的集合,且不允許重復的成員。
不同的是每個元素都會失聯一個double類型的分數,redis正是通過分數來為集合中的成員進行從小到大的排序。
有序集合的成員是唯一的,但分數(score)卻可以重復。
集合是通過哈希表實現的,所以添加,刪除,查找的復雜度都是O(1)。 集合中最大的成員數為 232 - 1 (4294967295, 每個集合可存儲40多億個成員)。
zadd key score1 member1 [score2 member2] 為指定的key有序集合添加分數及其該分數對應的元素。可以一次添加多個元素
- zcard key 返回指定的有序集合key中元素個數
- zcount key min max 返回指定有序集合key中 分數從min到max的元素個數
- zincrby key increment member 為指定的有序集合key中的指定memeber元素的分數加上一個increment
- zrank key member 返回指定key集合中member的下標 從0開始
- zscore key member 返回指定key集合中member的分數
- zrem key memeber1 [member2]移除指定key集合中的一個或者多個元素