Reporting reference - query basics

TeamForm Reports uses SQL which is a standard language for accessing and manipulating databases.

The SQL SELECT Statement

The SELECT statement is used to select data from a table.

The data returned is stored in a result table, called the result-set.

SELECT Syntax

SELECT column1, column2, ... FROM table_name

Here, column1, column2, ... are the field names of the table you want to select data from. If you want to select all the fields available in the table, use the following syntax:

SELECT * FROM table_name

The SQL WHERE Clause

The WHERE clause is used to filter records.

The WHERE clause is used to extract only those records that fulfil a specified condition.

WHERE Syntax

SELECT column1, column2, ... FROM table_name WHERE condition

Example

The following SQL statement selects the firstname and surname of all the people from the country = ‘Mexico', in the people table:

The SQL ORDER BY Clause

The ORDER BY clause is used to sort your columns of data by a particular ordering e.g. ASC ascending or DESC descending and even across multiple columns for more advanced sorting.

ORDER BY Syntax

Example Descending order

The following SQL statement selects the firstname and surname of all the people from the country = ‘Mexico', in the people table and then sorts by surname in DESC (descending order):

You could also add the keyword ASC but in this case, the default behaviour is ascending order.

Example Ascending order

The following SQL statement selects the firstname and surname of all the people from the country = ‘Mexico', in the people table and then sorts by surname in ASC(ascending order - the default):

Example ORDER BY Multiple Columns

The following SQL statement selects the firstname and surname of all the people from the country = ‘Mexico', in the people table and then sorts by surname in DESC order and then firstname in ASC (ascending order - the default):

It is also possible to reference your columns numerically int he order they appear in the select statement e.g. ORDER BY 2 DESC, 1 ASC would achieve the same intended behaviour.

This might cause more confusion if you have a lot of columns in your SELECT statement/

Want to learn more SQL?

If you are interested in digging further into SQL there are a wealth of resources (articles, books, videos online) and your organisation may even have a learning platform with paid resources for you to learn from. In the mean time a useful basic cheatsheet can be found here:SQL Basics Cheat Sheet

Related Pages