Differences

This shows you the differences between two versions of the page.

Link to this comparison view

dev:sql:statements:select:home [2010/07/02 09:27]
tdo
dev:sql:statements:select:home [2016/06/28 22:38]
Line 1: Line 1:
-{{page>:​top_add&​nofooter&​noeditbtn}} 
-<​html><​div align="​center"><​span style="​color:​red">​DRAFT</​span></​div></​html>​ 
-====== Omnidex SQL Statement: SELECT ====== 
-{{page>:​sql_bar&​nofooter&​noeditbtn}} 
-===== Description ===== 
-The Omnidex SQL Select statement is the primary statement used to query records on Omnidex enhanced data. 
  
-Omnidex will automatically optimize the SELECT statement using Omnidex indexes. 
-===== Syntax ===== 
-The syntax for the Omnidex SELECT statement is the following: 
- 
-<​code>​ 
-  SELECT ​ 
-      [ < TOP n [ SKIP n ] | EVERY n [ SKIP n ] | RANDOM n | RANDOM (n, seed) > ]  
-      [ SAMPLE(‘control_break’ [, ’qualifier’]) ]  
-      [ DISTINCT ] 
-      select_list 
-      FROM data_source 
-      [ WHERE criteria_list ] 
-      [ GROUP BY group_by_list ] 
-          [ HAVING having_list ] 
-      [ ORDER BY order_by_list ] 
-      [ < UNION [ALL] | INTERSECT | EXCEPT > select_statement ] 
-      [ ON [ CURSOR ] cursor_no ] | [ INSTANCE instance_no ] 
-      [ WITH option_list ] 
-</​code>​ 
- 
-==== Expression_list syntax: ==== 
-<​code>​ 
-  expression_list 
-         [ < TOP (n)  
-             [ SKIP(n) | EVERY(n) | RANDOM (n [, seed] ) ] ] 
-         [ < DISTINCT column_spec | ALL >] 
-         [ SAMPLE(‘control_break’ [, ’qualifier’]) ]  
-         [ UNION [ALL] | INTERSECT | EXCEPT ] 
-         [ * ] | [ column_spec [column_alias] [, column_spec ... ] 
-         [ (subquery) ] 
-         [ aggregate_function( column_spec ) [column_alias] ] 
-         [ function( column_spec ) ] 
-         [ column_spec < + | - | / | * > <​column_spec | value > [column_alias] ] 
-         [ $uniquekey | $odxid ] 
-          
-</​code>​ 
-==== FROM Clause Syntax: ==== 
-<​code>​ 
-  FROM table_spec [ table_alias ] [, [table_spec2 [ table_alias ] [ $omnidex ] ] 
-           [[ < LEFT | RIGHT >][ OUTER | CROSS ] ] 
-       [ JOIN table_spec2 ] 
-           [ ON table_spec1.linkfield = table_spec2.linkfield ] 
-           [ <AND | OR> NOT] table_spec.linkfield = table_spec.linkfield ] 
-</​code>​ 
- 
-==== WHERE Clause Syntax: ==== 
-<​code>​ 
-  WHERE [ criteria_list ] 
-        [ EXISTS (subquery) ] 
-        [ IN (subquery) ] 
-</​code>​ 
-==== GROUP BY/HAVING Clause Syntax: ==== 
-<​code>​ 
-  GROUP BY group_by_columns 
-      [ HAVING [ left_operand operator subquery ] 
-             [ left_operand IN (subquery) ] ] 
-</​code>​ 
-==== ORDER BY Clause Syntax: ==== 
-<​code>​ 
-  ORDER BY [ column_spec | column_position ] [ ASC | DESC ]  
-           [, column_spec | column_position ] [ ASC | DESC ] 
-</​code>​ 
- 
-==== WITH Clause Syntax: ==== 
-<​code>​ 
-  WITH options 
-</​code>​ 
- 
-===== Discussion ===== 
-==== Expression_list ====  
-The expression_list can be one of the following: 
- 
-|  *   | All columns for the named tables using a syntax of [/[  database. ] table. ]] * | 
-| column_spec | A column optionally qualified by a database and table with an optional column_alias. | 
-| (subquery) | A nested subquery that returns a single select item. | 
-| expression | A standard SQL or Omnidex-specific function | 
-| $uniquekey | | 
-| $odxid | | 
-==== FROM Clause ==== 
-      ​ 
-The From Datasource can be one of the following: 
-| table_spec | A table using a syntax of [database.]table. | 
-| $OMNIDEX ​  | An internal table automatically created and used for testing consisting of one row and one column. | 
-| (subquery) | A nested subquery. |  
-| JOIN Clause | Joins one or more tables.| 
-==== WHERE Clause ==== 
-The WHERE clause can be used to specify both criteria and table join information. 
- 
-  select * from trans_table where state = '​CA';​ 
- 
-  ​ 
- 
-==== GROUP BY Clause ==== 
-==== HAVING Clause ==== 
-==== ORDER BY Clause ==== 
- 
-The ORDER BY clause returns selected rows in ascending or descending order by the specified column_spec or the ordinal position of a column_spec in the column list. 
- 
-  select trans_date, trans_amount from trans_table order by trans_date; 
- 
-  select trans_date, trans_amount from trans_table order by 2; 
- 
-The column_spec can be in the format of [database.][table.]column or table_alias.column. 
- 
-  select trans_date, trans_amount from trans_table order by db1.trans_table.trans_amount;​ 
- 
-Column_spec can also be prefixed with an alias name of the table'​s column or an alias name of an expression. ​ 
- 
-  select trans_date, trans_amount - discount NetAmount from trans_table order by NetAmount; 
- 
-The ASC/DESC modifier can be used to return the data in ascending or descending order with ascending order being the default. 
- 
-  select trans_date, trans_amount from trans_table order by trans_date desc; 
-==== WITH options ==== 
- 
-== PRESERVE_CRITERIA ==  ​ 
- 
-== PRESERVE_CRITERIA_ORDER == 
- 
-===== Examples ===== 
-==== Select all columns from table ==== 
- 
-  > select * from mytable; 
- 
-==== Select with Omnidex criteria on Quicktext column ==== 
- 
-  > select company, contact from mytable where company = '​inform*';​ 
- 
-{{page>:​bottom_add&​nofooter&​noeditbtn}} 
 
Back to top
dev/sql/statements/select/home.txt · Last modified: 2016/06/28 22:38 (external edit)