TDV Adapter for SAS Data Sets

Build 24.0.9060

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 SASDataSets adapter:

SELECT {
  [ TOP <numeric_literal> | DISTINCT ]
  { 
    * 
    | { 
        <expression> [ [ AS ] <column_reference> ] 
        | { <table_name> | <correlation_name> } .* 
      } [ , ... ] 
  }
  { 
    FROM <table_reference> [ [ AS ] <identifier> ] 
  }
  [ WHERE <search_condition> ]
  [ GROUP BY <column_reference> [ , ... ]
  [ HAVING <search_condition> ]
  [ UNION  [ ALL ] <select_statement> ]
  [ 
    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> { = | > | < | >= | <= | <> | != | AND | OR | IN | LIKE } [ <expression> ]
    } [ { AND | OR } ... ]

Examples

  1. Return all columns:
    SELECT * FROM Account
  2. Rename a column:
    SELECT "Name" AS MY_Name FROM Account
  3. Cast a column's data as a different data type:
    SELECT CAST(AnnualRevenue AS VARCHAR) AS Str_AnnualRevenue FROM Account
  4. Search data:
    SELECT * FROM Account WHERE Industry = 'Floppy Disks'
  5. The SASDataSets APIs support the following operators in the WHERE clause: =, >, <, >=, <=, <>, !=, AND, OR, IN, LIKE.
    SELECT * FROM Account WHERE Industry = 'Floppy Disks';
  6. Return the number of items matching the query criteria:
    SELECT COUNT(*) AS MyCount FROM Account 
  7. Return the number of unique items matching the query criteria:
    SELECT COUNT(DISTINCT Name) FROM Account 
  8. Return the unique items matching the query criteria:
    SELECT DISTINCT Name FROM Account 
  9. Sort a result set in ascending order:
    SELECT Id, Name FROM Account  ORDER BY Name ASC

Window Functions

See Window Functions for SELECT examples containing window functions.

Table-Valued Functions

See Table-Valued Functions for SELECT examples with table-valued functions.

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 24.0.9060