Skip to content

Commit bdf6bac

Browse files
authored
Add support for 'scan' queries (#108)
1 parent e8d978b commit bdf6bac

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

pydruid/query.py

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,10 @@ def export_pandas(self):
179179
nres = []
180180
for item in self.result:
181181
nres += [e.get('event') for e in item['result'].get('events')]
182+
elif self.query_type == "scan":
183+
nres = []
184+
for item in self.result:
185+
nres += [e for e in item.get('events')]
182186
else:
183187
raise NotImplementedError(
184188
'Pandas export not implemented for query '
@@ -423,3 +427,20 @@ def search(self, args):
423427
]
424428
self.validate_query(query_type, valid_parts, args)
425429
return self.build_query(query_type, args)
430+
431+
def scan(self, args):
432+
"""
433+
A scan query returns raw Druid rows
434+
435+
:param dict args: dict of args
436+
437+
:return: select query
438+
:rtype: Query
439+
"""
440+
query_type = 'scan'
441+
valid_parts = [
442+
'datasource', 'granularity', 'filter', 'dimensions', 'metrics',
443+
'intervals', 'limit',
444+
]
445+
self.validate_query(query_type, valid_parts, args)
446+
return self.build_query(query_type, args)

0 commit comments

Comments
 (0)