Section: Derived positional patterns

Delta from first value

sql
sql
SELECT customer_id,
       order_date,
       amount,
       amount - FIRST_VALUE(amount) OVER (
         PARTITION BY customer_id
         ORDER BY order_date
         ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING
       ) AS delta_from_first
FROM orders;
Explanation

This shows how far each later value has drifted from the starting point.

Learn the surrounding workflow

Compare similar commands or jump into common fixes when this command is part of a bigger troubleshooting path.

Related commands

Same sheet · prioritizing Derived positional patterns
Compare current value to final partition value
Measure remaining distance to the last value.
OpenIn sheetsqlsame section
Get the first value in each partition
Carry the earliest value across all rows in the partition.
OpenIn sheetsql1 tag match
Get the true last value in each partition
Use an explicit full frame with LAST_VALUE.
Get the second value in each partition
Pull a specific positional value.