Redis構文紹介のリスト

3496 ワード

Lists(リスト)共通コマンドは以下のとおりです.
一、増加
127.0.0.1:6379> lpush list01 1 2 3 4 rr //       5   
(integer) 5
127.0.0.1:6379> lrange list01 0 -1 //                  0, 1, 2 ...
1) "rr"
2) "4"
3) "3"
4) "2"
5) "1"
127.0.0.1:6379> rpush list02 0 1 2 3 4 //         
(integer) 5
127.0.0.1:6379> lrange list02 0 -1
1) "0"
2) "1"
3) "2"
4) "3"
5) "4"

二、削除
127.0.0.1:6379> lpop list01 //        ,       
"rr"
127.0.0.1:6379> rpop list02 //       ,       
"4"
127.0.0.1:6379> lrange list02 0 -1
1) "0"
2) "1"
3) "2"
4) "3"
127.0.0.1:6379> lrem list03 2 2 // LREM KEY_NAME COUNT VALUE      2
(integer) 2 

三、改める
127.0.0.1:6379> lrange list01 0 -1        
1) "5"                                    
2) "4"                                    
3) "3"                                    
4) "2"                                    
127.0.0.1:6379> lrange list02 0 -1        
1) "0"                                    
2) "1"                                    
3) "2"                                    
4) "3"                                    
127.0.0.1:6379> rpoplpush list01 list02   //  list01        list02
"2"                                       
127.0.0.1:6379> lrange list02 0 -1        
1) "2"                                    
2) "0"                                    
3) "1"                                    
4) "2"                                    
5) "3"                                    
127.0.0.1:6379> lrange list01 0 -1        
1) "5"                                    
2) "4"                                    
3) "3"                                    
127.0.0.1:6379> lset list01 0 x //     0   x          
OK                                        
127.0.0.1:6379> lrange list01 0 -1        
1) "x"                                    
2) "4"                                    
3) "3"                                    
127.0.0.1:6379> linsert list01 before x y // x   y
(integer) 4                               
127.0.0.1:6379> lrange list01 0 -1        
1) "y"                                    
2) "x"                                    
3) "4"                                    
4) "3"                                    
127.0.0.1:6379> linsert list01 after x z  // x   y
(integer) 5                               
127.0.0.1:6379> lrange list01 0 -1
 1) "7"
 2) "6"
 3) "5"
 4) "4"
 5) "3"
 6) "2"
 7) "1"
 8) "4"
 9) "3"
10) "2"
11) "1"
127.0.0.1:6379> ltrim list01 2 5 //    2   5           
OK
127.0.0.1:6379> lrange list01 0 -1
1) "5"
2) "4"
3) "3"
4) "2"

四、調査
127.0.0.1:6379> lindex list02 1 //     1  
"1"
127.0.0.1:6379> lindex list02 4
(nil)
127.0.0.1:6379> lindex list02 3
"3"
127.0.0.1:6379> llen list02 //        
(integer) 4

五、性能総括
  • は文字列チェーンテーブルであり、left、rightはいずれも
  • を挿入して追加することができる.
  • キーが存在しない場合は、新しいチェーンテーブル
  • を作成します.
  • キーが既に存在する場合、新規コンテンツ
  • チェーンテーブルの操作はヘッドとテールの効率が極めて高いが、中間要素を操作すると効率は惨憺たる
  • である.