Interactive SQL analytics in your browser!
At present, Afterburner takes as input SQL queries in the form of what we refer to as "fluent" SQL, based on a method-chaining notation. This was inspired by squel.js and we took this route to save ourselves from having to write yet-another SQL parser. There is a straightforward mapping from SQL queries to our "fluent" SQL representation, so this is simply syntactic sugar. However, biting the bullet and actually writing a SQL parser is part of our roadmap.
Here are some examples:
SELECT name, salary FROM employees WHERE salary > 100000 ORDER BY salary LIMIT 10;
SELECT d.name, AVG(e.salary) FROM employees e JOIN departments d ON e.deptId = d.id WHERE e.location = 'Waterloo' GROUP BY d.name;
abdb.select().from('employees') .field('name','salary') .where(_gt('salary',100000)) .order('salary') .limit(10)
abdb.select().from('employees') .join('departments').on('employees.deptId', 'departments.id') .field('departments.name', _avg('employees.salary')) .where(_eq('location', 'Waterloo') .group('departments.name');
Other points of comparison with Afterburner: