This quickie app converts SQL statements into ElasticSearch equivalent queries. Note that the converter is very much a work in progress, and as such, doesn't support great many things.
At the moment the application supports SELECT, FROM, WHERE, GROUP BY statements.
For SELECT, you can either place * or specify column names.
The FROM statement works with either aliases or indexes.
The WHERE conditions support a subset of operators: =, >, >=, <, <=, IN, BETWEEN.
The GROUP BY statement only supports column names. Columns in the GROUP BY must match those in SELECT.
Examples:
SELECT name, type, state, pin
FROM cities
WHERE name = 'Miami'
AND state = 'FL'
AND zipCodes IN (33126, 33151)
AND averageAge BETWEEN 34 AND 65
AND averageSalary >= 55230
AND averageTemperature < 80
SELECT *
FROM Planets
WHERE SpacecraftWithinKilometers < 10000
SELECT SolarSystem, Galaxy
FROM Planets
WHERE SpacecraftWithinKilometers < 10000
GROUP BY SolarSystem, Galaxy
- Inequality operator (!=)
- Sorting
- Joins (because ElasticSearch doesn't support them)
- Common SQL functions like GetDate, DateDiff, Count(*), etc are not supported yet
See the "What doesn't work yet" section