nowfound

Dev tools · October 19, 2023

SW

SQL Window Functions Explained

Window functions are probably the most confusing part of SQL. You might think, "So what? They just added a few extra functions". Not really. "Window functions" is a separate language built into regular SQL. And it's more complicated than anything you know about SELECTs. I've read several dozen articles explaining SQL window functions. They all suffered from one of two problems: (1) Easy read without much practical value, describing 10% of features, or (2) Difficult to comprehend (if I did not know the subject — I would not understand a thing). I wanted people to understand SQL windows…

What it does

In the maker’s words, at launch

Window functions are probably the most confusing part of SQL. You might think, "So what? They just added a few extra functions". Not really. "Window functions" is a separate language built into regular SQL. And it's more complicated than anything you know about SELECTs. I've read several dozen articles explaining SQL window functions. They all suffered from one of two problems: (1) Easy read without much practical value, describing 10% of features, or (2) Difficult to comprehend (if I did not know the subject — I would not understand a thing). I wanted people to understand SQL windows better. So I wrote a book on window functions with a hundred pictures and GIFs explaining everything, and fifty-six interactive exercises to turn abstract knowledge into skills. Here it is.

Does the same job

all alternatives →
  • SQL query for CSV2022 · ▲85

    Analyze CSV records using sql syntax right in your browser

  • SQ
    SQLite query inside a Bash function2021 · ▲134

    Part of the workflow for building my website is the generation of a table in tab-separated column format (.tsv). The source data is found in four other .tsv files. I use an SQLite query to perform a 4-way join and write out the new table. For convenience, I wrote a script that encapsulates the query inside a Bash function. The example below illustrates this technique. repertoire() { pushd $CMM_SOURCES&#x2F;_data sqlite3 <<EOS .headers on .mode tabs .import category.tsv category .import composition.tsv composition .import concert.tsv concert .import program.tsv program .once repertoire.tsv…

  • SQL Grammar2022 · ▲81

    Check if your SQL is readable or not

  • SQL Cards2019 · ▲201

    Teach and learn SQL with cards

  • TE
    Translate English to SQL2019 · github.com · ▲209
  • Natural Language to SQL2025 · ▲33

    Turn everyday language into SQL queries

More dev tools this month

the category →
  • Dograh592

    The open source VAPI alternative

    Dev tools · 25d ago · dograh.com

  • Meridian530

    Don't let your work go unnoticed. Get promoted!

    Dev tools · 20d ago · meridiona.com

  • x1516

    Lovable for iPhone apps go from idea to App Store

    Dev tools · 11d ago · x1.new

  • Open-source GTM skills for technical founders

    Dev tools · 29d ago · gtmcofounder.com

  • OpenTrailPaper is open-source bike computer firmware for the LilyGO T5S3 4.7" E-Paper PRO. It supports offline maps, GPX routes, FIT recording and Bluetooth sensors.

    Dev tools · 1d ago · opentrailpaper.com

  • Nuphos380

    The AI-Native DevOps Workspace.

    Dev tools · 24d ago · nuphos.ai

Launched alongside, October 2023

the whole month →
  • AI autopilot for content creation & marketing

    AI · 2023 · typeface.ai

  • Nudge 2.01,051

    In-app experiences to activate, retain, & understand users

    Growth · 2023 · nudgenow.com

  • World's first open source AI scheduling assistant

    AI · 2023 · cal.com

  • Unlock AI magic for elevated customer engagement, fast

    AI · 2023 · tiledesk.com

  • TalkNotes854

    Turn your thoughts into actionable notes, fast

    AI · 2023 · talknotes.io

  • OD

    Effortlessly discover API behaviour with a Chrome extension that automatically generates OpenAPI specifications in real time for any app or website.

    Dev tools · 2023 · github.com