ddbcli 0.3.5 → 0.3.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 989847bbd044a7f8b55277fcf79d6f87497ce6dc
4
- data.tar.gz: ebd92af86e25aa7f696851966c09ff62706f0667
3
+ metadata.gz: 0ed0ee9d9dc097573bbdf49182bcef2a8751af2e
4
+ data.tar.gz: 112ce4939ccb1cbfb083bc785cae474427b1f03d
5
5
  SHA512:
6
- metadata.gz: fd546866388539e3f4881b098c734fffe1c9c6237de8f6edb28164d9007d3bcd00d088457ae3100fc4c49b92d11a9c6e40785aa27586a2e4db24bc9a918707d8
7
- data.tar.gz: cd554bcd559c6d3e396d43e754844412e421d02f23e21e071fec7df14a8e476e470b9958e4c1c492329d37437b276c3c063dbed2d9463954b27d8cf4e1181bfb
6
+ metadata.gz: 9fe3469ade8447b7a46fe768a75e8939b01b1486193e69b201d2ae4c4f0d4452b37db3dd9c17a3dea76b4a5215fa38766b5d6243559771bffbecfae696935a35
7
+ data.tar.gz: 4edef9cd083130f4f1f39abb280c1e28c272fec6769817b98de87cca7bb4978c77c2b9b478d6dce9792a4ef0b741778f1998a84377b832ed6878b72da066aaab
data/README.md CHANGED
@@ -11,12 +11,13 @@ ddbcli is an interactive command-line client of Amazon DynamoDB.
11
11
 
12
12
  If you are not using RubyGems, you can use the script files that depend on only Ruby.
13
13
 
14
- [ddbcli-0.3.5](https://bitbucket.org/winebarrel/ddbcli/downloads/ddbcli-0.3.5)
14
+ [ddbcli-0.3.6](https://bitbucket.org/winebarrel/ddbcli/downloads/ddbcli-0.3.6)
15
15
 
16
16
  ```sh
17
- wget https://bitbucket.org/winebarrel/ddbcli/downloads/ddbcli-0.3.5
18
- sudo cp ddbcli-0.3.5 /usr/local/bin/ddbcli
19
- sudo chmod 755 /usr/local/bin/ddbcli
17
+ wget https://bitbucket.org/winebarrel/ddbcli/downloads/ddbcli-0.3.6
18
+ mv ddbcli-0.3.6 ddbcli
19
+ chmod 755 ddbcli
20
+ ./ddbcli # show prompt
20
21
  ```
21
22
 
22
23
  ## Usage
@@ -61,7 +62,7 @@ DEBUG: 'i' contains: [{"gender"=>"F"}, {"gender"=>"F"}, {"gender"=>"F"}] ...
61
62
 
62
63
  * [https://gist.github.com/winebarrel/7938971](https://gist.github.com/winebarrel/7938971)
63
64
 
64
- ## Enabling ctrl-r (reverse-search-history) on OS X
65
+ ## Enable ctrl-r (reverse-search-history) on OS X
65
66
 
66
67
  $ echo 'bind "^R" em-inc-search-prev' >> ~/.editrc
67
68
 
@@ -121,7 +122,7 @@ DELETE ALL FROM table_name WHERE [WHERE attr1 = '...' AND ...] [ORDER {ASC|DESC}
121
122
  deletes items
122
123
  ("DELETE" can delete only one record. Please use "DELETE ALL", when you update more than one.)
123
124
 
124
- SELECT {*|attr1,attr2,...|COUNT(*)} FROM table_name [USE INDEX (index_name)] [WHERE key1 = '...' AND ...] [ORDER {ASC|DESC}] [LIMIT limit]
125
+ SELECT {*|attr1,attr2,...|COUNT(*)} FROM table_name [USE INDEX (index_name)] [WHERE key1 = '...' AND ...] [HAVING attr1 = '...' AND ...] [ORDER {ASC|DESC}] [LIMIT limit]
125
126
  SELECT ALL {*|attr1,attr2,...|COUNT(*)} FROM table_name [WHERE attr1 = '...' AND ...] [LIMIT limit]
126
127
  SELECT segment/total_segments {*|attr1,attr2,...|COUNT(*)} FROM table_name [WHERE attr1 = '...' AND ...] [LIMIT limit]
127
128
  queries using the Query/Scan action
@@ -162,9 +163,10 @@ Query (SELECT)
162
163
  = | <= | < | >= | > | BEGINS_WITH | BETWEEN
163
164
  see http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html#DDB-Query-request-KeyConditions
164
165
 
165
- Scan (SELECT ALL)
166
+ Scan (SELECT ALL), QueryFilter (HAVING)
166
167
  = | <> | != | <= | < | >= | > | IS NOT NULL | IS NULL | CONTAINS | NOT CONTAINS | BEGINS_WITH | IN | BETWEEN
167
- see http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Scan.html#DDB-Scan-request-ScanFilter
168
+ see http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Scan.html#DDB-Scan-request-ScanFilter,
169
+ http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html#DDB-Query-request-QueryFilter
168
170
 
169
171
 
170
172
  ##### Pass to Ruby/Shell #####
@@ -211,7 +213,3 @@ Append
211
213
  .timeout SECOND? displays a timeout second or changes it
212
214
  .version displays a version
213
215
  ```
214
-
215
- ## Link
216
-
217
- * [RubyGems.org site](http://rubygems.org/gems/ddbcli)
@@ -55,7 +55,7 @@ DELETE ALL FROM table_name WHERE [WHERE attr1 = '...' AND ...] [ORDER {ASC|DESC}
55
55
  deletes items
56
56
  ("DELETE" can delete only one record. Please use "DELETE ALL", when you update more than one.)
57
57
 
58
- SELECT {*|attr1,attr2,...|COUNT(*)} FROM table_name [USE INDEX (index_name)] [WHERE key1 = '...' AND ...] [ORDER {ASC|DESC}] [LIMIT limit]
58
+ SELECT {*|attr1,attr2,...|COUNT(*)} FROM table_name [USE INDEX (index_name)] [WHERE key1 = '...' AND ...] [HAVING attr1 = '...' AND ...] [ORDER {ASC|DESC}] [LIMIT limit]
59
59
  SELECT ALL {*|attr1,attr2,...|COUNT(*)} FROM table_name [WHERE attr1 = '...' AND ...] [LIMIT limit]
60
60
  SELECT segment/total_segments {*|attr1,attr2,...|COUNT(*)} FROM table_name [WHERE attr1 = '...' AND ...] [LIMIT limit]
61
61
  queries using the Query/Scan action
@@ -96,9 +96,10 @@ Query (SELECT)
96
96
  = | <= | < | >= | > | BEGINS_WITH | BETWEEN
97
97
  see http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html#DDB-Query-request-KeyConditions
98
98
 
99
- Scan (SELECT ALL)
99
+ Scan (SELECT ALL), QueryFilter (HAVING)
100
100
  = | <> | != | <= | < | >= | > | IS NOT NULL | IS NULL | CONTAINS | NOT CONTAINS | BEGINS_WITH | IN | BETWEEN
101
- see http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Scan.html#DDB-Scan-request-ScanFilter
101
+ see http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Scan.html#DDB-Scan-request-ScanFilter,
102
+ http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html#DDB-Query-request-QueryFilter
102
103
 
103
104
 
104
105
  ##### Pass to Ruby/Shell #####
@@ -604,6 +604,21 @@ module DynamoDB
604
604
  end
605
605
  end # key conditions / scan filter
606
606
 
607
+ # query filter
608
+ if action == 'Query' and parsed.having
609
+ req_hash['QueryFilter'] = {}
610
+
611
+ parsed.having.each do |key, operator, values|
612
+ h = req_hash['QueryFilter'][key] = {
613
+ 'ComparisonOperator' => operator.to_s
614
+ }
615
+
616
+ h['AttributeValueList'] = values.map do |val|
617
+ convert_to_attribute_value(val)
618
+ end
619
+ end
620
+ end # query filter
621
+
607
622
  rd = nil
608
623
 
609
624
  begin