AgileApps Support Wiki Pre Release

Difference between revisions of "SQL Syntax Considerations"

From AgileApps Support Wiki
imported>Aeric
imported>Aeric
Line 18: Line 18:
::which means that parser found a word it recognized, but didn't find other things it expected before it got to that word.
::which means that parser found a word it recognized, but didn't find other things it expected before it got to that word.
-->
-->
:* If you do a query on different tables that have fields with the same name, you should provide  column aliases for those fields. (Otherwise, a query for A.phone and B.phone identifies both sets of values as "phone". Column aliases make it possible to tell which table a set of values came from.)
:* If you do a query on different tables that have fields with the same name, you should provide  column aliases for those fields. (Otherwise, a query for <tt>A.phone</tt> and <tt>B.phone</tt> identifies both sets of values as "phone". A column alias like <tt>A.phone AS A-phone</tt> makes it possible to tell which table a set of values came from.)
:: ''Learn more:'' [[#column_expr|column_expr]]
:: ''Learn more:'' [[SQL Syntax#column_expr|column_expr]]

Revision as of 19:56, 1 February 2012

Considerations
  • SQL syntax is not case-sensitive, except for table names and field names.
  • Backticks are (`) are needed around any table or field name that is one of the SQL Reserved Words.
For example: SELECT * FROM `Order`
Without the backticks, you get an error like this:
Encountered "Order" at line column 15. Was expecting one of (...
That error means the parser found a word it recognized, but didn't find other things it expected before it got to that word.
  • When either a table name or a field name is reserved word, and both are used together, then backticks are needed around the combination.
For example: `Order.order_number`
  • If you do a query on different tables that have fields with the same name, you should provide column aliases for those fields. (Otherwise, a query for A.phone and B.phone identifies both sets of values as "phone". A column alias like A.phone AS A-phone makes it possible to tell which table a set of values came from.)
Learn more: column_expr