ddbcli 0.3.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,313 @@
1
+ describe 'ddbcli' do
2
+ context 'update' do
3
+ before do
4
+ ddbcli(<<-'EOS')
5
+ CREATE TABLE `employees` (
6
+ `emp_no` NUMBER HASH,
7
+ `birth_date` STRING RANGE
8
+ ) read=2 write=2;
9
+
10
+ INSERT INTO `employees`
11
+ (`birth_date`, `emp_no`, `first_name`, `gender`, `hire_date`, `last_name`)
12
+ VALUES
13
+ ("1956-05-15",2,"Cathie","M","1997-04-11","Keohane"),
14
+ ("1957-09-16",4,"Aemilian","M","1990-09-25","Roccetti"),
15
+ ("1959-07-01",4,"Dayanand","M","1989-09-01","Waterhouse"),
16
+ ("1964-12-29",7,"Mack","F","1988-02-25","Hambrick"),
17
+ ("1962-07-06",4,"Tristan","M","1985-07-20","Biran"),
18
+ ("1964-04-30",2,"Akhilish","F","1985-03-21","Isaak"),
19
+ ("1963-07-14",1,"Katsuyuki","F","1989-12-28","Weedon"),
20
+ ("1961-10-19",2,"Collette","M","1993-02-26","Ghemri"),
21
+ ("1955-04-26",4,"Zine","M","1991-06-19","Butner"),
22
+ ("1961-04-28",4,"Selwyn","F","1994-08-12","Parascandalo");
23
+ EOS
24
+ end
25
+
26
+ it 'update by pk' do
27
+ ddbcli('update employees set hire_date = "1977-11-11", foo = "bar" where emp_no = 4 and birth_date = "1961-04-28"')
28
+ out = ddbcli('select all * from employees')
29
+ out = JSON.parse(out)
30
+
31
+ expect(out).to eq(
32
+ [{"birth_date"=>"1956-05-15",
33
+ "emp_no"=>2,
34
+ "first_name"=>"Cathie",
35
+ "gender"=>"M",
36
+ "hire_date"=>"1997-04-11",
37
+ "last_name"=>"Keohane"},
38
+ {"birth_date"=>"1961-10-19",
39
+ "emp_no"=>2,
40
+ "first_name"=>"Collette",
41
+ "gender"=>"M",
42
+ "hire_date"=>"1993-02-26",
43
+ "last_name"=>"Ghemri"},
44
+ {"birth_date"=>"1964-04-30",
45
+ "emp_no"=>2,
46
+ "first_name"=>"Akhilish",
47
+ "gender"=>"F",
48
+ "hire_date"=>"1985-03-21",
49
+ "last_name"=>"Isaak"},
50
+ {"birth_date"=>"1963-07-14",
51
+ "emp_no"=>1,
52
+ "first_name"=>"Katsuyuki",
53
+ "gender"=>"F",
54
+ "hire_date"=>"1989-12-28",
55
+ "last_name"=>"Weedon"},
56
+ {"birth_date"=>"1964-12-29",
57
+ "emp_no"=>7,
58
+ "first_name"=>"Mack",
59
+ "gender"=>"F",
60
+ "hire_date"=>"1988-02-25",
61
+ "last_name"=>"Hambrick"},
62
+ {"birth_date"=>"1955-04-26",
63
+ "emp_no"=>4,
64
+ "first_name"=>"Zine",
65
+ "gender"=>"M",
66
+ "hire_date"=>"1991-06-19",
67
+ "last_name"=>"Butner"},
68
+ {"birth_date"=>"1957-09-16",
69
+ "emp_no"=>4,
70
+ "first_name"=>"Aemilian",
71
+ "gender"=>"M",
72
+ "hire_date"=>"1990-09-25",
73
+ "last_name"=>"Roccetti"},
74
+ {"birth_date"=>"1959-07-01",
75
+ "emp_no"=>4,
76
+ "first_name"=>"Dayanand",
77
+ "gender"=>"M",
78
+ "hire_date"=>"1989-09-01",
79
+ "last_name"=>"Waterhouse"},
80
+ {"birth_date"=>"1961-04-28",
81
+ "emp_no"=>4,
82
+ "first_name"=>"Selwyn",
83
+ "foo"=>"bar",
84
+ "gender"=>"F",
85
+ "hire_date"=>"1977-11-11",
86
+ "last_name"=>"Parascandalo"},
87
+ {"birth_date"=>"1962-07-06",
88
+ "emp_no"=>4,
89
+ "first_name"=>"Tristan",
90
+ "gender"=>"M",
91
+ "hire_date"=>"1985-07-20",
92
+ "last_name"=>"Biran"}]
93
+ )
94
+ end
95
+
96
+ it 'update all' do
97
+ ddbcli('update all employees set hire_date = "1977-11-11", foo = "bar" where gender = "F"')
98
+ out = ddbcli('select all * from employees')
99
+ out = JSON.parse(out)
100
+
101
+ expect(out).to eq(
102
+ [{"birth_date"=>"1956-05-15",
103
+ "emp_no"=>2,
104
+ "first_name"=>"Cathie",
105
+ "gender"=>"M",
106
+ "hire_date"=>"1997-04-11",
107
+ "last_name"=>"Keohane"},
108
+ {"birth_date"=>"1961-10-19",
109
+ "emp_no"=>2,
110
+ "first_name"=>"Collette",
111
+ "gender"=>"M",
112
+ "hire_date"=>"1993-02-26",
113
+ "last_name"=>"Ghemri"},
114
+ {"birth_date"=>"1964-04-30",
115
+ "emp_no"=>2,
116
+ "first_name"=>"Akhilish",
117
+ "foo"=>"bar",
118
+ "gender"=>"F",
119
+ "hire_date"=>"1977-11-11",
120
+ "last_name"=>"Isaak"},
121
+ {"birth_date"=>"1963-07-14",
122
+ "emp_no"=>1,
123
+ "first_name"=>"Katsuyuki",
124
+ "foo"=>"bar",
125
+ "gender"=>"F",
126
+ "hire_date"=>"1977-11-11",
127
+ "last_name"=>"Weedon"},
128
+ {"birth_date"=>"1964-12-29",
129
+ "emp_no"=>7,
130
+ "first_name"=>"Mack",
131
+ "foo"=>"bar",
132
+ "gender"=>"F",
133
+ "hire_date"=>"1977-11-11",
134
+ "last_name"=>"Hambrick"},
135
+ {"birth_date"=>"1955-04-26",
136
+ "emp_no"=>4,
137
+ "first_name"=>"Zine",
138
+ "gender"=>"M",
139
+ "hire_date"=>"1991-06-19",
140
+ "last_name"=>"Butner"},
141
+ {"birth_date"=>"1957-09-16",
142
+ "emp_no"=>4,
143
+ "first_name"=>"Aemilian",
144
+ "gender"=>"M",
145
+ "hire_date"=>"1990-09-25",
146
+ "last_name"=>"Roccetti"},
147
+ {"birth_date"=>"1959-07-01",
148
+ "emp_no"=>4,
149
+ "first_name"=>"Dayanand",
150
+ "gender"=>"M",
151
+ "hire_date"=>"1989-09-01",
152
+ "last_name"=>"Waterhouse"},
153
+ {"birth_date"=>"1961-04-28",
154
+ "emp_no"=>4,
155
+ "first_name"=>"Selwyn",
156
+ "foo"=>"bar",
157
+ "gender"=>"F",
158
+ "hire_date"=>"1977-11-11",
159
+ "last_name"=>"Parascandalo"},
160
+ {"birth_date"=>"1962-07-06",
161
+ "emp_no"=>4,
162
+ "first_name"=>"Tristan",
163
+ "gender"=>"M",
164
+ "hire_date"=>"1985-07-20",
165
+ "last_name"=>"Biran"}]
166
+ )
167
+ end
168
+
169
+ it 'update add' do
170
+ ddbcli('update all employees set foo = 500')
171
+ ddbcli('update all employees add foo = 1000 where gender = "F"')
172
+ out = ddbcli('select all * from employees')
173
+ out = JSON.parse(out)
174
+
175
+ expect(out).to eq(
176
+ [{"birth_date"=>"1956-05-15",
177
+ "emp_no"=>2,
178
+ "first_name"=>"Cathie",
179
+ "foo"=>500,
180
+ "gender"=>"M",
181
+ "hire_date"=>"1997-04-11",
182
+ "last_name"=>"Keohane"},
183
+ {"birth_date"=>"1961-10-19",
184
+ "emp_no"=>2,
185
+ "first_name"=>"Collette",
186
+ "foo"=>500,
187
+ "gender"=>"M",
188
+ "hire_date"=>"1993-02-26",
189
+ "last_name"=>"Ghemri"},
190
+ {"birth_date"=>"1964-04-30",
191
+ "emp_no"=>2,
192
+ "first_name"=>"Akhilish",
193
+ "foo"=>1500,
194
+ "gender"=>"F",
195
+ "hire_date"=>"1985-03-21",
196
+ "last_name"=>"Isaak"},
197
+ {"birth_date"=>"1963-07-14",
198
+ "emp_no"=>1,
199
+ "first_name"=>"Katsuyuki",
200
+ "foo"=>1500,
201
+ "gender"=>"F",
202
+ "hire_date"=>"1989-12-28",
203
+ "last_name"=>"Weedon"},
204
+ {"birth_date"=>"1964-12-29",
205
+ "emp_no"=>7,
206
+ "first_name"=>"Mack",
207
+ "foo"=>1500,
208
+ "gender"=>"F",
209
+ "hire_date"=>"1988-02-25",
210
+ "last_name"=>"Hambrick"},
211
+ {"birth_date"=>"1955-04-26",
212
+ "emp_no"=>4,
213
+ "first_name"=>"Zine",
214
+ "foo"=>500,
215
+ "gender"=>"M",
216
+ "hire_date"=>"1991-06-19",
217
+ "last_name"=>"Butner"},
218
+ {"birth_date"=>"1957-09-16",
219
+ "emp_no"=>4,
220
+ "first_name"=>"Aemilian",
221
+ "foo"=>500,
222
+ "gender"=>"M",
223
+ "hire_date"=>"1990-09-25",
224
+ "last_name"=>"Roccetti"},
225
+ {"birth_date"=>"1959-07-01",
226
+ "emp_no"=>4,
227
+ "first_name"=>"Dayanand",
228
+ "foo"=>500,
229
+ "gender"=>"M",
230
+ "hire_date"=>"1989-09-01",
231
+ "last_name"=>"Waterhouse"},
232
+ {"birth_date"=>"1961-04-28",
233
+ "emp_no"=>4,
234
+ "first_name"=>"Selwyn",
235
+ "foo"=>1500,
236
+ "gender"=>"F",
237
+ "hire_date"=>"1994-08-12",
238
+ "last_name"=>"Parascandalo"},
239
+ {"birth_date"=>"1962-07-06",
240
+ "emp_no"=>4,
241
+ "first_name"=>"Tristan",
242
+ "foo"=>500,
243
+ "gender"=>"M",
244
+ "hire_date"=>"1985-07-20",
245
+ "last_name"=>"Biran"}]
246
+ )
247
+ end
248
+
249
+ it 'update delete' do
250
+ ddbcli('update all employees set hire_date = null where gender = "M"')
251
+ out = ddbcli('select all * from employees')
252
+ out = JSON.parse(out)
253
+
254
+ expect(out).to eq(
255
+ [{"birth_date"=>"1956-05-15",
256
+ "emp_no"=>2,
257
+ "first_name"=>"Cathie",
258
+ "gender"=>"M",
259
+ "last_name"=>"Keohane"},
260
+ {"birth_date"=>"1961-10-19",
261
+ "emp_no"=>2,
262
+ "first_name"=>"Collette",
263
+ "gender"=>"M",
264
+ "last_name"=>"Ghemri"},
265
+ {"birth_date"=>"1964-04-30",
266
+ "emp_no"=>2,
267
+ "first_name"=>"Akhilish",
268
+ "gender"=>"F",
269
+ "hire_date"=>"1985-03-21",
270
+ "last_name"=>"Isaak"},
271
+ {"birth_date"=>"1963-07-14",
272
+ "emp_no"=>1,
273
+ "first_name"=>"Katsuyuki",
274
+ "gender"=>"F",
275
+ "hire_date"=>"1989-12-28",
276
+ "last_name"=>"Weedon"},
277
+ {"birth_date"=>"1964-12-29",
278
+ "emp_no"=>7,
279
+ "first_name"=>"Mack",
280
+ "gender"=>"F",
281
+ "hire_date"=>"1988-02-25",
282
+ "last_name"=>"Hambrick"},
283
+ {"birth_date"=>"1955-04-26",
284
+ "emp_no"=>4,
285
+ "first_name"=>"Zine",
286
+ "gender"=>"M",
287
+ "last_name"=>"Butner"},
288
+ {"birth_date"=>"1957-09-16",
289
+ "emp_no"=>4,
290
+ "first_name"=>"Aemilian",
291
+ "gender"=>"M",
292
+ "last_name"=>"Roccetti"},
293
+ {"birth_date"=>"1959-07-01",
294
+ "emp_no"=>4,
295
+ "first_name"=>"Dayanand",
296
+ "gender"=>"M",
297
+ "last_name"=>"Waterhouse"},
298
+ {"birth_date"=>"1961-04-28",
299
+ "emp_no"=>4,
300
+ "first_name"=>"Selwyn",
301
+ "gender"=>"F",
302
+ "hire_date"=>"1994-08-12",
303
+ "last_name"=>"Parascandalo"},
304
+ {"birth_date"=>"1962-07-06",
305
+ "emp_no"=>4,
306
+ "first_name"=>"Tristan",
307
+ "gender"=>"M",
308
+ "last_name"=>"Biran"}]
309
+ )
310
+ end
311
+
312
+ end
313
+ end
metadata CHANGED
@@ -1,38 +1,87 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ddbcli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
- - winebarrel
7
+ - Genki Sugawara
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-12-13 00:00:00.000000000 Z
11
+ date: 2013-12-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: json
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ! '>='
17
+ - - '>='
18
18
  - !ruby/object:Gem::Version
19
19
  version: '0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ! '>='
24
+ - - '>='
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
- description:
27
+ - !ruby/object:Gem::Dependency
28
+ name: bundler
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ~>
32
+ - !ruby/object:Gem::Version
33
+ version: '1.3'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ~>
39
+ - !ruby/object:Gem::Version
40
+ version: '1.3'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rake
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rspec
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - '>='
60
+ - !ruby/object:Gem::Version
61
+ version: 2.14.1
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '>='
67
+ - !ruby/object:Gem::Version
68
+ version: 2.14.1
69
+ description: ddbcli is an interactive command-line client of Amazon DynamoDB.
28
70
  email: sgwr_dts@yahoo.co.jp
29
71
  executables:
30
72
  - ddbcli
31
73
  extensions: []
32
74
  extra_rdoc_files: []
33
75
  files:
34
- - README
76
+ - .gitignore
77
+ - .rspec
78
+ - Gemfile
79
+ - LICENSE.txt
80
+ - README.md
81
+ - Rakefile
35
82
  - bin/ddbcli
83
+ - ddbcli.gemspec
84
+ - lib/ddbcli.rb
36
85
  - lib/ddbcli/cli/evaluate.rb
37
86
  - lib/ddbcli/cli/functions.rb
38
87
  - lib/ddbcli/cli/help.rb
@@ -46,9 +95,16 @@ files:
46
95
  - lib/ddbcli/ddb-parser.tab.rb
47
96
  - lib/ddbcli/ddb-parser.y
48
97
  - lib/ddbcli/ddb-rubyext.rb
49
- - lib/ddbcli.rb
98
+ - lib/ddbcli/version.rb
99
+ - spec/ddbcli_spec.rb
100
+ - spec/delete_spec.rb
101
+ - spec/insert_spec.rb
102
+ - spec/select_spec.rb
103
+ - spec/spec_helper.rb
104
+ - spec/update_spec.rb
50
105
  homepage: https://bitbucket.org/winebarrel/ddbcli
51
- licenses: []
106
+ licenses:
107
+ - MIT
52
108
  metadata: {}
53
109
  post_install_message:
54
110
  rdoc_options: []
@@ -56,18 +112,24 @@ require_paths:
56
112
  - lib
57
113
  required_ruby_version: !ruby/object:Gem::Requirement
58
114
  requirements:
59
- - - ! '>='
115
+ - - '>='
60
116
  - !ruby/object:Gem::Version
61
117
  version: '0'
62
118
  required_rubygems_version: !ruby/object:Gem::Requirement
63
119
  requirements:
64
- - - ! '>='
120
+ - - '>='
65
121
  - !ruby/object:Gem::Version
66
122
  version: '0'
67
123
  requirements: []
68
124
  rubyforge_project:
69
- rubygems_version: 2.1.11
125
+ rubygems_version: 2.1.8
70
126
  signing_key:
71
127
  specification_version: 4
72
128
  summary: ddbcli is an interactive command-line client of Amazon DynamoDB.
73
- test_files: []
129
+ test_files:
130
+ - spec/ddbcli_spec.rb
131
+ - spec/delete_spec.rb
132
+ - spec/insert_spec.rb
133
+ - spec/select_spec.rb
134
+ - spec/spec_helper.rb
135
+ - spec/update_spec.rb
data/README DELETED
@@ -1,185 +0,0 @@
1
- = ddbcli
2
-
3
- == Description
4
-
5
- ddbcli is an interactive command-line client of Amazon DynamoDB.
6
-
7
- == Source Code
8
-
9
- https://bitbucket.org/winebarrel/ddbcli
10
-
11
- == Install
12
-
13
- shell> gem install ddbcli
14
- shell> export AWS_ACCESS_KEY_ID='...'
15
- shell> export AWS_SECRET_ACCESS_KEY='...'
16
- shell> export DDB_REGION=ap-northeast-1
17
- shell> ddbcli -e 'show tables'
18
- [
19
- "employees"
20
- ]
21
-
22
- shell> ddbcli -h
23
- Usage: ddbcli [options]
24
- -k, --access-key=ACCESS_KEY
25
- -s, --secret-key=SECRET_KEY
26
- -r, --region=REGION_OR_ENDPOINT
27
- -e, --eval=COMMAND
28
- -t, --timeout=SECOND
29
- --import=TABLE,JSON_FILE
30
- --consistent-read
31
- --retry=NUM
32
- --retry-interval=SECOND
33
- --debug
34
- -h, --help
35
- ...
36
- shell> ddbcli # show prompt
37
-
38
- == Use DynamoDB Local
39
-
40
- ddbcli --uri localhost:8000
41
-
42
- == Help
43
-
44
- ##### Query #####
45
-
46
- SHOW TABLES [LIMIT num] [LIKE '...']
47
- displays a table list
48
-
49
- SHOW TABLE STATUS [LIKE '...']
50
- displays table statues
51
-
52
- SHOW REGIONS
53
- displays a region list
54
-
55
- SHOW CREATE TABLE table_name
56
- displays a CREATE TABLE statement
57
-
58
- CREATE TABLES table_name (
59
- key_name {STRING|NUMBER|BINARY} HASH
60
- [, key_name {STRING|NUMBER|BINARY} RANGE]
61
- [, INDEX index1_name (attr1 {STRING|NUMBER|BINARY}) {ALL|KEYS_ONLY|INCLUDE (attr, ...)}
62
- , INDEX index2_name (attr2 {STRING|NUMBER|BINARY}) {ALL|KEYS_ONLY|INCLUDE (attr, ...)}
63
- , ...]
64
- [, GLOBAL INDEX index1_name (hash_attr1 {STRING|NUMBER|BINARY} [, range_attr1 {STRING|NUMBER|BINARY}]) {ALL|KEYS_ONLY|INCLUDE (attr, ...)} [READ = num WRITE = num]
65
- , GLOBAL INDEX index2_name (hash_attr2 {STRING|NUMBER|BINARY} [, range_attr2 {STRING|NUMBER|BINARY}]) {ALL|KEYS_ONLY|INCLUDE (attr, ...)} [READ = num WRITE = num]
66
- , ...]
67
- ) READ = num WRITE = num
68
- creates a table
69
-
70
- CREATE TABLES table_name LIKE another_table_name [READ = num, WRITE = num]
71
- creates a table like another table
72
-
73
- DROP TABLE table_name
74
- deletes a table
75
-
76
- ALTER TABLE table_name READ = num, WRITE = num
77
- updates the provisioned throughput
78
-
79
- GET {*|attr1,attr2,...} FROM table_name WHERE key1 = '...' AND ...
80
- gets items
81
-
82
- INSERT INTO table_name (attr1, attr2, ...) VALUES ('val1', 'val2', ...), ('val3', 'val4', ...), ...
83
- INSERT INTO table_name SELECT ...
84
- INSERT INTO table_name SELECT ALL ...
85
- creates items
86
-
87
- UPDATE table_name {SET|ADD} attr1 = 'val1', ... WHERE key1 = '...' AND ...
88
- UPDATE ALL table_name {SET|ADD} attr1 = 'val1', ... [WHERE attr1 = '...' AND ...] [LIMIT limit]
89
- updates items
90
-
91
- DELETE FROM table_name WHERE key1 = '...' AND ..
92
- DELETE ALL FROM table_name WHERE [WHERE attr1 = '...' AND ...] [ORDER {ASC|DESC}] [LIMIT limit]
93
- deletes items
94
-
95
- SELECT {*|attr1,attr2,...|COUNT(*)} FROM table_name [USE INDEX (index_name)] [WHERE key1 = '...' AND ...] [ORDER {ASC|DESC}] [LIMIT limit]
96
- SELECT ALL {*|attr1,attr2,...|COUNT(*)} FROM table_name [WHERE attr1 = '...' AND ...] [LIMIT limit]
97
- SELECT segment/total_segments {*|attr1,attr2,...|COUNT(*)} FROM table_name [WHERE attr1 = '...' AND ...] [LIMIT limit]
98
- queries using the Query/Scan action
99
- see http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/QueryAndScan.html
100
-
101
- DESC[RIBE] table_name
102
- displays information about the table
103
-
104
- USE region_or_endpoint
105
- changes an endpoint
106
-
107
- NEXT
108
- displays a continuation of a result
109
- (NEXT statement is published after SELECT statement)
110
-
111
-
112
- ##### Type #####
113
-
114
- String
115
- 'London Bridge is...', "is broken down..." ...
116
-
117
- Number
118
- 10, 100, 0.3 ...
119
-
120
- Binary
121
- x'123456789abcd...', x"123456789abcd..." ...
122
-
123
- Identifier
124
- `ABCD...` or Non-keywords
125
-
126
- Array
127
- ('String', 'String', ...), (1, 2, 3, ...)
128
-
129
-
130
- ##### Operator #####
131
-
132
- Query (SELECT)
133
- = | <= | < | >= | > | BEGINS_WITH | BETWEEN
134
- see http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html#DDB-Query-request-KeyConditions
135
-
136
- Scan (SELECT ALL)
137
- = | <> | != | <= | < | >= | > | IS NOT NULL | IS NULL | CONTAINS | NOT CONTAINS | BEGINS_WITH | IN | BETWEEN
138
- see http://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Scan.html#DDB-Scan-request-ScanFilter
139
-
140
-
141
- ##### Pass to Ruby/Shell #####
142
-
143
- Ryby
144
- query | ruby_script
145
-
146
- ex) SELECT ALL * FROM employees WHERE gender = 'M' | birth_date.map {|i| Time.parse(i) };
147
- [
148
- "1957-09-16 00:00:00 +0900",
149
- "1954-12-16 00:00:00 +0900",
150
- "1964-05-23 00:00:00 +0900",
151
- ...
152
-
153
- Shell
154
- query ! shell_command
155
-
156
- ex) SELECT ALL * FROM employees LIMIT 10 ! sort;
157
- {"birth_date"=>"1957-09-16", "emp_no"=>452020,...
158
- {"birth_date"=>"1963-07-14", "emp_no"=>16998, ...
159
- {"birth_date"=>"1964-04-30", "emp_no"=>225407,...
160
- ...
161
-
162
-
163
- ##### Output to a file #####
164
-
165
- Overwrite
166
- SELECT ALL * FROM employees > 'foo.json';
167
-
168
- Append
169
- SELECT ALL * FROM employees >> 'foo.json';
170
-
171
-
172
- ##### Command #####
173
-
174
- .help displays this message
175
- .quit | .exit exits ddbcli
176
- .consistent (true|false)? displays ConsistentRead parameter or changes it
177
- .iteratable (true|false)? displays iteratable option or changes it
178
- all results are displayed if true
179
- .debug (true|false)? displays a debug status or changes it
180
- .retry NUM? displays number of times of a retry or changes it
181
- .retry_interval SECOND? displays a retry interval second or changes it
182
- .timeout SECOND? displays a timeout second or changes it
183
- .version displays a version
184
-
185
-