~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to docs/join.rst

  • Committer: Lee Bieber
  • Date: 2011-02-24 03:20:47 UTC
  • mfrom: (2196.1.4 build)
  • Revision ID: kalebral@gmail.com-20110224032047-avmw06iwww3m73cw
Merge Andrew - 723653: Docs day first pass fixes 
Merge Brian - Puts back in support for COM_KILL, Also adds back in the INTERACTIVE flag, and creates a DD to track sessions/check on usage
Merge Olaf - Use List::size()

Show diffs side-by-side

added added

removed removed

Lines of Context:
42
42
 
43
43
The "userID" column is the primary key in the "Persons" table; in the "Persons" table, it can be used to identify users without using their names. Therefore, the relationship between the two tables above is the "userId" column.
44
44
 
45
 
**Different kinds of SQL JOINs**
 
45
Different kinds of SQL JOINs
 
46
----------------------------
46
47
 
47
48
Here are the types of JOIN you can use, and the differences between them:
48
49
 
55
56
        **CROSS JOIN:** Return rows when there is a match in one of the tables
56
57
 
57
58
 
58
 
*Note:** Implicit cartesian products of the form ``SELECT * FROM t1, t2`` without a ``WHERE`` or ``ON`` condition will error. If such behavior is intended please use ``SELECT * FROM t1 CROSS JOIN t2``.
59
 
 
60
 
 
61
 
**How joins are executed**:
 
59
.. note::
 
60
   Implicit cartesian products of the form ``SELECT * FROM t1, t2`` without a ``WHERE`` or ``ON`` condition will error. If such behavior is intended please use ``SELECT * FROM t1 CROSS JOIN t2``.
 
61
 
 
62
 
 
63
How joins are executed
 
64
----------------------
62
65
 
63
66
In its simplest form, a nested loop join works like this: It compares each row from one table (which can be considered the outer table) to each row from the other table (which can be considered the inner table), looking for rows that satisfy the join predicate. ('Inner table' and 'outer table' simply correlate to the inputs of the join, while 'inner join' and 'outer join' refer to the logical operations.)
64
67