Skip to content

Commit 96cd314

Browse files
fix: allow empty order by as an input (#149)
* allow empty order by as an input * added test case
1 parent f85bedf commit 96cd314

File tree

2 files changed

+18
-1
lines changed

2 files changed

+18
-1
lines changed

meerkat-core/src/ast-builder/ast-builder.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ export const cubeToDuckdbAST = (
124124
node.group_sets = [groupSets];
125125
}
126126
node.modifiers = [];
127-
if (query.order) {
127+
if (query.order && Object.keys(query.order).length > 0) {
128128
node.modifiers.push(cubeOrderByToAST(query.order));
129129
}
130130
if (query.limit || query.offset) {

meerkat-node/src/__tests__/cube-to-sql.spec.ts

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,4 +119,21 @@ describe('cube-to-sql', () => {
119119
'SELECT orders.* FROM (SELECT * FROM (select * from orders) AS orders) AS orders'
120120
);
121121
});
122+
it('Should handle empty order', async () => {
123+
const query = {
124+
order: {},
125+
measures: ['*'],
126+
filters: [
127+
{
128+
or: [],
129+
},
130+
],
131+
dimensions: [],
132+
};
133+
const sql = await cubeQueryToSQL({ query, tableSchemas: [TABLE_SCHEMA] });
134+
console.info(`SQL for Simple Cube Query: `, sql);
135+
expect(sql).toEqual(
136+
'SELECT orders.* FROM (SELECT * FROM (select * from orders) AS orders) AS orders'
137+
);
138+
});
122139
});

0 commit comments

Comments
 (0)