Intro to SQLfor Organizing
Module 1 · SQL for Organizing 1.2 Case framing
Subsection 1.2

Case framing

~4 min

Reading

Most organizing teams eventually reach a moment where the spreadsheet stops working.

Maybe the outreach list crossed 100,000 rows. Maybe survey responses now live across five files. Maybe leadership asks the same question every two weeks, and someone rebuilds the same report by hand every time. Maybe a staffer can answer the question, but only after freezing their laptop, copying data into a new sheet, and hoping no filter got lost.

This course starts at that moment.

The case file is simple:

A team has outreach, member, voter, RSVP, or survey data in large tables and can no longer answer key questions efficiently in spreadsheets alone.

The cure is not to learn every SQL feature.

The cure is to practice a repeatable loop:

  1. Pick one real question.
  2. Find the right table.
  3. Read the schema before writing code.
  4. Write one good query.
  5. Share the finding with the team.

SQL is the bridge between a team's question and an organizing decision.

Example:

  • Team question: Which zip codes had the most signups this month?
  • Data table: signups, with date, zip, and source columns.
  • SQL query pattern: group by zip, count signups, order by count.
  • Organizer decision: send canvassers to the top three zip codes.

That is why this course is built around an Organizer Query Brief instead of a syntax worksheet. The point is not to memorize SQL as trivia. The point is to turn data into a decision someone can act on.

Starter questions

Pick one question that sounds close to something your team would ask:

  • Which contacts came in through a survey this month?
  • Which zip codes show the most volunteer signups?
  • Which records are missing phone numbers?
  • How many event RSVPs came from each source last quarter?

Learner action

Write your case theory in rough form:

I want to use SQL to answer [question].
This matters because [organizing reason].
I think the first place to look will be [type of table or dataset].

Most organizing teams reach a moment where the spreadsheet stops working. Maybe the outreach list crossed 100,000 rows. Maybe survey responses are now spread across five files. Maybe leadership keeps asking the same question every two weeks and someone has to rebuild the report by hand each time.

This course's case file is exactly that moment:

A team has outreach, member, or survey data in large tables and can no longer answer key questions efficiently in spreadsheets alone.

The cure is not "learn every SQL feature." The cure is: pick one real question, find the right table, write one good query, share it with the team. That's the loop you'll practice for the next two hours.

Team question"Which zip codeshad the mostsignups this month?" Data tablesignups(date, zip, source) SQL queryGROUP BY zipORDER BY count OrganizerdecisionSend canvassersto top 3 zips
Case file 1.2 · Question to decision. SQL is the bridge between a team's question and a decision the organizer can act on.

Pick a question

Read these starter questions. Mentally pick one that sounds closest to something your team would actually ask.

  • Which contacts came in through a survey this month?
  • Which zip codes show the most volunteer signups?
  • Which records are missing phone numbers?
  • How many event RSVPs came from each source last quarter?

Let's get hands-on early. The query below pulls a single voter from a tiny sample voter_file so you can see the question : “who is in this dataset?” : answered as a row of data. Run it.

Action: Pick one realistic question. You will reuse it across every module.