Redis 入門練習

Redis提供了一個命令行入門練習的web:http://try.redis.io/web

///////////////////////////////////////////////////////////////////////////////redis

1.設置/獲取鍵值併發

set key valueapp

get keyui

實例:spa

> set name "apple"
OK
> get name
"apple"

///////////////////////////////////////////////////////////////////////////////命令行

2.數值自增(相似i++),此操做屬於原子操做,支持多併發code

incr keyblog

> set num 15
OK
> incr num
(integer) 16

///////////////////////////////////////////////////////////////////////////////排序

3.刪除鍵值

del key

> set phone "IPhone6s"
OK
> get phone
"IPhone6s"
> del phone
(integer) 1
> get phone
(nil)

///////////////////////////////////////////////////////////////////////////////

4.設置/查看鍵值存活時間(單位:秒)

設置:expire key time

查看:ttl key

> set name "winson"
OK
> expire name 30
(integer) 1
> ttl name
(integer) 20
> ttl name
(integer) 11
> ttl name
(integer) -2

返回-2,表示該鍵值不存在。

> set name "Tom"
OK
> ttl name
(integer) -1

若是設置了一個鍵值,ttl key會返回-1,表示該鍵值沒有設置存活時間,它會一直存在

///////////////////////////////////////////////////////////////////////////////

 5.往list添加元素。

往列表尾部添加元素:rpush list_name value

往列表頭部添加元素:lpush list_name value

(integer) -1
> rpush fruits "apple"
(integer) 1
> rpush fruits "banana"
(integer) 2
> rpush fruits "orange"
(integer) 3
> lpush fruits "pear"
(integer) 4

///////////////////////////////////////////////////////////////////////////////

6.獲取list的長度

llen list_name

> llen fruits
(integer) 4

///////////////////////////////////////////////////////////////////////////////

7.獲取list元素(單純獲取,list中不刪除)

獲取整個list中的元素(0表示從list的起始下標索引,-1表示list的結尾):lrange list_name 0 -1

> lrange fruits 0 -1
1) "pear"
2) "apple"
3) "banana"
4) "orange"

指定獲取list某個範圍的元素(1表示起始下標,3表示結束下標):lrange list_name 1 3

> lrange fruits 1 3
1) "apple"
2) "banana"
3) "orange"

///////////////////////////////////////////////////////////////////////////////

 8.獲取list中的元素(獲取後從list中刪除)

獲取位於list頭部的元素:lpop list_name

> lpop fruits
"pear"
> llen fruits
(integer) 3

獲取位於list尾部的元素:rpop list_name

> rpop fruits
"orange"
> llen fruits
(integer) 2

///////////////////////////////////////////////////////////////////////////////

 9.添加元素到sets(排序規則與添加順序無關)

sadd set_name value

> sadd devices "watch"
(integer) 1
> sadd devices "phone"
(integer) 1
> sadd devices "computer"
(integer) 1
> sadd devices "pad"
(integer) 1

///////////////////////////////////////////////////////////////////////////////

 10.獲取sets中的成員

smembers set_name

> smembers devices
1) "phone"
2) "pad"
3) "computer"
4) "watch"

///////////////////////////////////////////////////////////////////////////////

11.刪除sets中的成員,刪除成功返回1,刪除失敗返回0

srem set_name value

> srem devices "computer"
1
> smembers devices
1) "phone"
2) "pad"
3) "watch"
> srem devices "sb"
0

///////////////////////////////////////////////////////////////////////////////

12.判斷某value是否爲sets中的成員。(1爲true,0爲false)

sismember set_name value

> sismember devices "pad"
(integer) 1
> sismember devices "padpad"
(integer) 0

///////////////////////////////////////////////////////////////////////////////

13.獲取兩個或多個sets的並集

sunion set_name1 set_name2

> sadd colors "red"
(integer) 1
> sadd colors "green"
(integer) 1
> sunion devices colors
1) "green"
2) "phone"
3) "watch"
4) "pad"
5) "red"

///////////////////////////////////////////////////////////////////////////////

 14.添加成員到有序的set集合,默認根據store進行升序排列

zadd set_name store value

> zadd days 45 "Monday"
(integer) 1
> zadd days 65 "Tuesday"
(integer) 1
> zadd days 55 "Wednesday"
(integer) 1

///////////////////////////////////////////////////////////////////////////////

 15.獲取有序的set集合(參考【7】)

zrange set_name start_index end_index

> zrange days 0 -1
1) "Monday"
2) "Wednesday"
3) "Tuesday"

///////////////////////////////////////////////////////////////////////////////

16.添加hashes集合

hset hashes_name key value

> hset car name "BMW"
(integer) 1
> hset car price "46W RMB"
(integer) 1
> hset car Driver "winson"
(integer) 1

///////////////////////////////////////////////////////////////////////////////

17.獲取hashes中的成員

獲取全部的成員:hgetall hashes_name

> hgetall car
1) "name"
2) "BMW"
3) "price"
4) "46W RMB"
5) "Driver"
6) "winson"

獲取指定的成員:hget hashes_name key

> hget car price
"46W RMB"

///////////////////////////////////////////////////////////////////////////////

18.hashes集合中的數值自增

hincrby hashes_name key count

> hset NBA store 54
(integer) 1
> hincrby NBA store 3
(integer) 57

///////////////////////////////////////////////////////////////////////////////

相關文章
相關標籤/搜索