Using SQL to query a database

To query a table using SQL, you simply tell the database what it is you're trying to do. If you want to get a list of the customers or a list of orders in the system, just select what parts of the table you want to get.

Note that the following code snippets are not Python-specific. Additionally, SQL statements are not case-sensitive but are usually written in uppercase for clarity, so you know what words are SQL-related.

Returning data with SQL is shown in following snippet:

SELECT * FROM Customers

The command simply pulls everything from Customers_table and prints it. The printed results may be textual or have grid lines, depending on the environment you are using, but the information will all be there.

You can also limit the selection to specific fields, such as following example:

SELECT Last_name, First_name FROM Customers
SELECT Address FROM Customers WHERE State == "NY"

The second SQL query uses the WHERE statement, which returns a limited set of information based on the condition specified. In this case, only the addresses of customers who live in New York state would be returned.

Limiting a query in this manner is a good idea because it limits the results you have to process and it reduces the amount of memory being used. Many system slowdowns can be traced to bad DB queries that return too much information and consume too many resources.

To combine the information from two tables, that is, to harness the power of relational databases, you have to join the tables in the query, as demonstrated here:

SELECT Last_name, First_name, Order_Number FROM Customers, Orders WHERE Customers.id = Orders.customer_id

This should give you something that looks like the following screenshot:

SQL query results

Again, the formatting may be different depending on the system you are working with, but it's the information that counts.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
13.58.51.36