AgileApps Support Wiki Pre Release

Difference between revisions of "SQL Syntax"

From AgileApps Support Wiki
imported>Aeric
imported>Aeric
Line 24: Line 24:
''Learn more:'': [http://dev.mysql.com/doc/refman/5.5/en/select.html MySQL Select Statement syntax]
''Learn more:'': [http://dev.mysql.com/doc/refman/5.5/en/select.html MySQL Select Statement syntax]
===column_expr===
===column_expr===
: *  |  ''table_alias''.*  |  ''column_name'' [ [AS] ''alias'' ]  |  [[#expr|expr]] [AS] ''alias''  
: *  |  ''table_alias''.*  |  ''column_name'' [ [AS] ''column_alias'' ]  |  [[#expr|expr]] [AS] ''column_alias''  


where:
where:
:;''alias'': Displayed as the column name in the result set, in the [[SQL Browser]].<br>Can be used as a field name in a [[#group_by_clause|group_by_clause]] or [[#order_by_clause|order_by_clause]].
:;''column_alias'': Displays as the column name in the result set, in the [[SQL Browser]].<br>Can be used as a field name in a [[#group_by_clause|group_by_clause]] or [[#order_by_clause|order_by_clause]].
::For example:  
::For example:  
:::<tt>SELECT CONCAT(last_name,', ',first_name) AS full_name</tt>
:::<tt>SELECT CONCAT(last_name,', ',first_name) AS full_name</tt>

Revision as of 00:17, 15 November 2011

Here is the syntax for the SQL SELECT statement that the SQL parser recognizes.

Considerations
  • SQL syntax is case insensitive.
  • Field and table names are case sensitive
Legend
  • [ x ] - Optional (one or none)
  • [, x ... ] - Optional additional values, in a comma-separated list
  • x | y - Choose one. Curly braces are added when needed: { x | y } ...
  • CAPITALIZED - SQL Keyword (case insensitive)
  • italicized - Value you supply. (Table names and column names are case-sensitive)

SELECT Statement

In a select statement, you designate one more columns separated by commas (or "*" for all columns), plus a table or join to get the data from, and additional options:

SELECT
[ DISTINCT ]
[ ( ]  column_expr [ , column_expr ... ]  [ ) ]
FROM table_reference
[WHERE where_clause]
[GROUP BY group_by_clause]
[ORDER BY order_by_clause]
[LIMIT limit_clause]

where:

DISTINCT
Eliminates duplicate rows from the result set.
For example: DISTINCT(customer_name, address)

Learn more:: MySQL Select Statement syntax

column_expr

*  |  table_alias.*  |  column_name [ [AS] column_alias ]  |  expr [AS] column_alias

where:

column_alias
Displays as the column name in the result set, in the SQL Browser.
Can be used as a field name in a group_by_clause or order_by_clause.
For example:
SELECT CONCAT(last_name,', ',first_name) AS full_name
FROM Customer_Contacts ORDER BY full_name;

expr

SQL Function
   | stuff...

table_reference

where_clause

group_by_clause

order_by_clause

ORDER BY column_name [ASC | DESC]   [, column_name [ASC | DESC] ...]

where:

ASC
Ascending (the default).
DESC
Descending.

limit_clause

maximum_rows  |  offset, maximum_rows

where:

maximum_rows
Maximum number of rows to return.
offset
The row to start from. Offset for the first row is zero (0).