elasql

SQL to Elastic DSL query converter


Keywords
elastic, elasticsearch, sql, dsl, query, translate, convert, nodejs
License
MIT
Install
npm install elasql@1.0.3

Documentation

{ela}sql

Generic SQL to Elasticsearch DSL query translator. Designed for SENTINL

Status

  • Experimental - Join us hacking this!

Installation

npm install elasql

Usage

const convert = require('elasql').convert
convert('SELECT id,name FROM shop WHERE shop_id BETWEEN 5 AND 10 AND type = "cat"')
Output
{
  "query": {
    "bool": {
      "must": [
        {
          "match": {
            "type": "cat"
          }
        }
      ],
      "must_not": [],
      "filter": [
        {
          "range": {
            "shop_id": {
              "gte": {
                "type": "number",
                "value": 5
              },
              "lte": {
                "type": "number",
                "value": 10
              }
            }
          }
        }
      ]
    }
  },
  "aggregations": {
    "id": {
      "terms": {
        "field": "id"
      },
      "aggregations": {
        "name": {
          "terms": {
            "field": "name"
          }
        }
      }
    }
  }
}

License

(C) QXIP BV 2018, released under the MIT License