mysql lead函数 使用
时间: 2024-05-30 09:12:25 浏览: 19
MySQL中的LEAD函数用于获取结果集中某一行的后面的行。该函数需要指定要获取的行数以及要检索的字段名。其语法如下:
LEAD(expr [,offset [,default]]) OVER (
[PARTITION BY partition_expression, ... ]
ORDER BY sort_expression [ASC|DESC], ...
)
其中,expr是要获取的字段名,offset是指要获取的后面行的数目(默认为1),default是可选参数,为当无符合条件的行时的默认值。
举个例子,假设有如下表结构:
CREATE TABLE `employees` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(255) NOT NULL,
`salary` decimal(10,2) NOT NULL,
PRIMARY KEY (`id`)
);
现在有如下数据:
id | name | salary
----|-----------|--------
1 | Alice | 5000.00
2 | Bob | 4000.00
3 | Charlie | 6000.00
4 | David | 5500.00
5 | Emily | 4500.00
我们可以使用LEAD函数来获取每个员工的后一个员工的薪水,语句如下:
SELECT name, salary, LEAD(salary) OVER (ORDER BY salary DESC) AS next_salary
FROM employees;
输出为:
name | salary | next_salary
----------|-----------|------------
Charlie | 6000.00 | 5500.00
David | 5500.00 | 5000.00
Alice | 5000.00 | 4500.00
Emily | 4500.00 | 4000.00
Bob | 4000.00 | NULL
从结果中可以看出,LEAD函数用于获取每个员工的后一个员工的薪水。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)