TDV Adapter for Elasticsearch

Build 21.0.8137

SELECT Statements

A SELECT statement can consist of the following basic clauses.

  • SELECT
  • INTO
  • FROM
  • JOIN
  • WHERE
  • GROUP BY
  • HAVING
  • UNION
  • ORDER BY
  • LIMIT

SELECT Syntax

The following syntax diagram outlines the syntax supported by the Elasticsearch adapter:

SELECT {
  [ TOP <numeric_literal> | DISTINCT ]
  { 
    * 
    | { 
        <expression> [ [ AS ] <column_reference> ] 
        | { <table_name> | <correlation_name> } .* 
      } [ , ... ] 
  }
  [ INTO csv:// [ filename= ] <file_path> [ ;delimiter=tab ] ]
  { 
    FROM <table_reference> [ [ AS ] <identifier> ] 
  }
  [ WHERE <search_condition> ]
  [ GROUP BY <column_reference> [ , ... ]
  [ 
    ORDER BY 
    <column_reference> [ ASC | DESC ] [ NULLS FIRST | NULLS LAST ]
  ]
  [
    LIMIT <expression>
    [ 
      { OFFSET | , }
      <expression> 
    ]
  ] 
} | SCOPE_IDENTITY() 

  <expression> ::=
    | <column_reference>
    | @ <parameter> 
    | ?
    | COUNT( * | { [ DISTINCT ] <expression> } )
    | { AVG | MAX | MIN | SUM | COUNT } ( <expression> ) 
    | NULLIF ( <expression> , <expression> ) 
    | COALESCE ( <expression> , ... ) 
    | CASE <expression>
        WHEN { <expression> | <search_condition> } THEN { <expression> | NULL } [ ... ]
    [ ELSE { <expression> | NULL } ]
      END 
    | <literal>
    | <sql_function> 

  <search_condition> ::= 
    {
      <expression> { = | > | < | >= | <= | <> | != | LIKE | NOT LIKE | IS NULL | IS NOT NULL | IN | NOT IN | AND | OR | BETWEEN | CONTAINS | NOT CONTAINS } [ <expression> ]
    } [ { AND | OR } ... ]

Examples

  1. Return all columns:
    SELECT * FROM [CData].[Elasticsearch].Employee
  2. Rename a column:
    SELECT "Name" AS MY_Name FROM [CData].[Elasticsearch].Employee
  3. Cast a column's data as a different data type:
    SELECT CAST(AnnualRevenue AS VARCHAR) AS Str_AnnualRevenue FROM [CData].[Elasticsearch].Employee
  4. Search data:
    SELECT * FROM [CData].[Elasticsearch].Employee WHERE Industry = 'Floppy Disks';
  5. The Elasticsearch APIs support the following operators in the WHERE clause: =, >, <, >=, <=, <>, !=, LIKE, NOT LIKE, IS NULL, IS NOT NULL, IN, NOT IN, AND, OR, BETWEEN, CONTAINS, NOT CONTAINS.
    SELECT * FROM [CData].[Elasticsearch].Employee WHERE Industry = 'Floppy Disks';
  6. Return the number of items matching the query criteria:
    SELECT COUNT(*) AS MyCount FROM [CData].[Elasticsearch].Employee 
  7. Return the number of unique items matching the query criteria:
    SELECT COUNT(DISTINCT Name) FROM [CData].[Elasticsearch].Employee 
  8. Return the unique items matching the query criteria:
    SELECT DISTINCT Name FROM [CData].[Elasticsearch].Employee 
  9. Summarize data:
    SELECT Name, MAX(AnnualRevenue) FROM [CData].[Elasticsearch].Employee  GROUP BY Name
    See Aggregate Functions for details.
  10. Sort a result set in ascending order:
    SELECT Id, Name FROM [CData].[Elasticsearch].Employee  ORDER BY Name ASC

Copyright (c) 2022 CData Software, Inc. - All rights reserved.
Build 21.0.8137