1f316761df2b871d387b3dc5fd8219b15c68d762
[swc-sql.git] / sql / novice / index.md
1 ---
2 layout: lesson
3 root: ../..
4 title: Using Databases and SQL
5 level: novice
6 ---
7 Almost everyone has used spreadsheets,
8 and almost everyone has eventually run up against their limitations.
9 The more complicated a data set is,
10 the harder it is to filter data,
11 express relationships between different rows and columns,
12 or handle missing values.
13
14 Databases pick up where spreadsheets leave off.
15 While they are not as simple to use if all we want is the sum of a dozen numbers,
16 they can do a lot of things that spreadsheets can't,
17 on much larger data sets,
18 faster.
19 And even if we never need to create a database ourselves,
20 knowing how they work will help us understand why so many of the systems we use
21 behave the way we do,
22 and why they insist on structuring data in certain ways.
23
24 Topics
25 ------
26 1.  [Selecting Data](01-select.html)
27 2.  [Sorting and Removing Duplicates](02-sort-dup.html)
28 3.  [Filtering](03-filter.html)
29 4.  [Calculating New Values](04-calc.html)
30 5.  [Missing Data](05-null.html)
31 6.  [Aggregation](06-agg.html)
32 7.  [Combining Data](07-join.html)
33 8.  [Creating and Modifying Data](08-create.html)
34 9.  [Programming with Databases](09-prog.html)
35
36 See Also
37 --------
38 *   [Instructor's Guide](guide.html)
39 *   [Reference](reference.html)
40
41 Resources
42 ---------
43 *   `gen-survey-database.sql`: re-generate survey database used in examples.
44 *   `sqlitemagic.py`: IPython Notebook plugin to support SQLite interaction.