The course outline describes the flow of the course on a lesson by lesson basis. For this step of course design, you need to provide the title of each chapter, the title of each lesson, and a brief description of each lesson's contents by including a learning objective and a short list of the functions that the lesson will cover. Each of the functions covered in a lesson should help achieve the learning objective. When writing your course outline remember that a course has four chapters and each chapter has 3-4 lessons. Chapter 1 is limited to 3 lessons. Review the example below to get an idea of a good course outline with a clear course flow.

Example

From our Intermediate SQL course:

Chapter 1: Selecting Data

Lesson 1.1: Querying a database

  • Learner will be able to select a count of records (COUNT(*)) or a count of field values (COUNT(field_name)) and differentiate between these results

  • Learner will be able to select a count of distinct records by field

  • Keywords used: COUNT (keywords from SQL Foundations such as SELECT, FROM, DISTINCT, AS, and * will also be used)

Lesson 1.2: Query execution

  • Learner will be able to describe the basic order that SQL code is executed (for example, FROM > SELECT > LIMIT)

  • Learner will be able to troubleshoot and debug SQL errors shown in the editor indicating missing commas or keywords and spelling mistakes

  • Keywords and new syntax: LIMIT, error handling

Lesson 1.3: SQL style

  • Learner will be able to edit messy SQL code to conform with basic SQL indentation and capitalization guidelines following Holywell's style guide

  • Learner will be able to select data from a table field with non-standard naming (spaces in the field name)

  • New syntax: non-standard field selection syntax; the exercises at the end of this lesson will also ask learners to update messy code in the editor to reinforce style concepts

Chapter 2: Filtering Records

Lesson 2.1: Filtering numbers

  • Learner will be able to filter both numerical and string values using the WHERE keyword and = and <> comparison operators

  • Learner will be able to filter numerical values using the comparison operators <, >, <=, >=

  • Keywords introduced: WHERE, the comparison operators listed above

Lesson 2.2: Multiple criteria

  • Learner will be able to filter data based on whether it meets at least one criterion using OR

  • Learner will be able to filter data based on whether it meets all required criteria using AND

  • Learner will be able to filter numerical values based on whether they fall BETWEEN two values

  • Keywords introduced: AND, OR, BETWEEN

Lesson 2.3: Filtering text

  • Learner will be able to filter data based on whether or not it is LIKE (or NOT LIKE) a criterion using the % and _ wildcards

  • Learner will be able to filter data based on whether it is included in a list of provided values using IN

  • Keywords introduced: LIKE, NOT LIKE % wildcard, _ wildcard, IN

Lesson 2.4: Null values

  • Learner will be able to identify and select or exclude missing values using IS NULL and IS NOT NULL

  • Definitions: null

  • Keywords introduced: IS NULL, IS NOT NULL

Chapter 3: Aggregate Functions

Lesson 3.1: Summarizing data

  • Learner will be able to summarize results by finding the average, minimum, maximum, or sum

  • Learner will understand which aggregate functions can be used with non-numerical data

  • Keywords introduced: AVG, MIN, MAX, SUM

Lesson 3.2: Summarizing subsets

  • Learner will be able to summarize filtered data by combining AVG, MIN, MAX, or SUM with WHERE

  • Learner will be able to round query results to the desired number of decimal places using ROUND

  • Keywords introduced: ROUND

Lesson 3.3: Aliasing and arithmetic

  • Learner will understand that aliases defined in the SELECT statement often cannot be referenced later in the query because of the order that SQL code is evaluated

  • Learner will be able to do basic calculations inside queries using +, -, *, and /

  • Lerner will understand the difference between aggregate functions and arithmetic

  • Keywords introduced: the arithmetic operators above

Chapter 4: Sorting and Grouping

Lesson 4.1: Sorting results

  • Learner will be able to order results by a selected field in either ascending or descending order

  • Learner will be able to order results by multiple fields

  • Keywords introduced: ORDER BY,DESC

Lesson 4.2: Grouping data

  • Learner will be able to group data based on values in a given field

  • Learner will be able to group results by multiple fields

  • Keywords introduced: GROUP BY

Lesson 4.3: Filtering grouped data

  • Learner will be able to filter grouped data using HAVING

  • Learner will be able to differentiate between situations where it is appropriate to use WHERE vs. those where it is appropriate to use HAVING

  • Keywords introduced: HAVING

Did this answer your question?