Collections:
LAG() - N-Row before Current Row within Window
How to evaluate a field expression on n-row before the current row in the current result set window using the LAG() function?
✍: FYIcenter.com
LAG(exp, n, default) is a MySQL built-in window function that evaluates a field expression on n-row before the current row in the current result set window. For example:
SELECT help_topic_id AS tip, help_category_id AS cid, name, LAG(name, 2, NULL) OVER w FROM mysql.help_topic WINDOW w AS (PARTITION BY help_category_id); -- +-----+-----+----------------+----------------------------+ -- | tip | cid | name | LAG(name, 2, NULL) OVER w | -- +-----+-----+----------------+----------------------------+ -- | 0 | 1 | HELP_DATE | NULL | -- | 1 | 1 | HELP_VERSION | NULL | -- | 2 | 2 | AUTO_INCREMENT | NULL | -- | 6 | 2 | BIT | NULL | -- | 7 | 2 | TINYINT | AUTO_INCREMENT | -- | 8 | 2 | BOOLEAN | BIT | -- | 9 | 2 | SMALLINT | TINYINT | -- | 10 | 2 | MEDIUMINT | BOOLEAN | -- ... -- +-----+-----+----------------+----------------------------+
Reference information of the LAG() function:
LAG(exp, n, default): val Evaluates a field expression on n-row before the current row in the current result set window. Arguments, return value and availability: exp: Required. The field expression to be evaluated. n: Optional. Default is 1. The number of rows lagging the current row. default: Optional. Default is NULL. The default value for non-existing rows. val: Return value. The exp value on n-row before the current row. Available since MySQL 8.
Related MySQL functions:
⇒ LAST_VALUE() - Last Value of Result Set Window
⇐ FIRST_VALUE() - First Value of Result Set Window
2023-12-19, 255🔥, 0💬
Popular Posts:
Where to find answers to frequently asked questions on Storage Engines: MyISAM, InnoDB and BDB in My...
How To Verify Your PHP Installation in MySQL? PHP provides two execution interfaces: Command Line In...
How AdventureWorksLT tables are related in SQL Server? There are 12 user tables defined in Adventure...
How To Drop an Index in Oracle? If you don't need an existing index any more, you should delete it w...
How To Drop a Stored Procedure in Oracle? If there is an existing stored procedure and you don't wan...