oreilly.comSafari Books Online.Conferences.



Dedicated to getting you into SQL and saving you development time and effort, John Paul Ashenfelter's aboutSQL provides information on SQL keywords, functions, tricks, and hacks.
Atom feed for this author. RSS 1.0 feed for this author. RSS 2.0 feed for this author.

SQL Data Types
Most database products support ANSI-SQL for manipulating data, but there is far more variance in the details of how DDL is implemented. John Paul Ashenfelter discusses data types for different SQL platforms. Sep. 13, 2001

Working With Tables
In the last aboutSQL column, John Paul Ashenfelter introduced the Data Definition Language (DDL) and how to create database containers. This week, he moves on to creating tables and populating them with data. Sep. 6, 2001

Data Definition Language
GUI-based database management tools are great, but it's also important to understand the broad strokes of directly manipulating database structure. In this week's aboutSQL, John Paul Ashenfelter describes how to use SQL to define the database, its component tables, and other artifacts.  Aug. 30, 2001

Introducing SQL Sets
Because SQL is based on relational algebra, it should come as no surprise that the standard contains several set-oriented operators. In that spirit, it's time we take a look at the UNION operator. Aug. 2, 2001

SQL Subqueries
Subqueries are extremely useful in web-based database applications where you need to combine two queries and manually put them together to achieve a desired result. Subqueries allow SQL to do all of the heavy lifting! Jul. 26, 2001

Self-Inflicted SQL
This week, John Paul Ashenfelter looks at the "self-join," a tool that is particularly useful in certain situations, such as when you have a normalized database table that needs to be flattened. Jul. 12, 2001

The Outer Limits of SQL JOINs
In the last column, John Paul Ashenfelter showed you how to use inner joins and cross joins. This week he tackles outer joins. Jun. 27, 2001

Types of JOINs
A look at what's going on behind the scenes when you perform a "join" in MySQL. John Paul Ashenfelter uses the cross join as an example of how joins work in general. Jun. 15, 2001

More on JOINS
The exploration into JOIN statements continues with a look at INNER JOIN, the most commonly used SQL join.  Jun. 1, 2001

JOINed at the Hip
The JOIN clause is probably one of the most used -- as well as one of the most confusing -- facets of SQL. John Paul Ashenfelter introduces the JOIN clause.  May. 24, 2001

Types of Relationships
How well are your database tables communicating with one another? This week John Paul discusses three key relationships: one to one, one to many, and many to many. Mar. 20, 2001

Good Relations
John Paul Ashenfelter looks at how keys are used to construct relationships between tables in a relational database.  Mar. 13, 2001

The "Key" to Good SQL
Database "keys" help eliminate confusion among records. Here's how to best incorporate these essential identifiers in your database. Mar. 6, 2001

Group By
The GROUP BY clause is the next step after mastering ORDER BY. John Paul Ashenfelter shows you how to combine database records into a single record to calculate an aggregate function.  Feb. 23, 2001

Controlling Data Display with ORDER BY
This week, John Paul Ashenfelter revisits the ORDER BY clause to help you control the display of your MySQL data.  Feb. 13, 2001

Aggregate Functions
John Paul Ashenfelter looks at a specific class of SQL functions that operate on entire columns of data instead of discrete values -- the aggregate functions.  Jan. 30, 2001

Using Functions
John Paul Ashenfelter continues his SQL tutorial with one of the most useful but most frustrating areas of SQL: built-in functions.  Jan. 12, 2001

Where to Use WHERE
We're continuing our exploration of the WHERE clause by digging a little deeper into its capabilities to see what it can really do. Jan. 5, 2001

DELETE Tips and Tricks
This week John Paul Ashenfelter discusses the most dangerous of the core SQL statements: DELETE. Proceed with caution. Dec. 29, 2000

UPDATE that Data!
Now that you have your data in MySQL, how do you change it? We'll show you step by step. Dec. 22, 2000

INSERTing Data
We've spent a fair amount of time discussing how to get data out of MySQL. But can you enter data directly into this database? You can using the INSERT command. Nov. 10, 2000

Filtering SELECTed Data with WHERE
SQL databases can be filtered by virtually any set of criteria using a single clause. This week, John Paul Ashenfelter shows us how to use the SELECT command to return subsets of data. Nov. 3, 2000

Introducing SELECT
The SELECT command helps you find the data in your database. Here's a hands-on tutorial on how it works. Oct. 27, 2000

What's the Big Deal about SQL?
SQL, the Structured English Query Language, is a standard for building relational databases. In this short introduction, author John Paul Ashenfelter explains relational databases and offers a history of the development and implementation of SQL.  Oct. 20, 2000

Getting Started with SQL
In the second half of his inaugural column, John Paul Ashenfelter introduces us to several good SQL learning tools and begins to define database terms.  Oct. 20, 2000

Sponsored by: