2022-11-21:第N高的薪水。表结构和数据的sql语句如下。请问sql语句如何写?DROP TABLE IF EXISTS
2023-06-13 09:16:48 时间
2022-11-21:第N高的薪水。表结构和数据的sql语句如下。请问sql语句如何写?
DROP TABLE IF EXISTS employee;
CREATE TABLE employee (
id int(11) NOT NULL,
salary int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
INSERT INTO employee VALUES ('1', '100');
INSERT INTO employee VALUES ('2', '200');
INSERT INTO employee VALUES ('3', '300');
需要写的函数如下:
CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INT
BEGIN
RETURN (
# 在这里写sql语句
);
END
答案2022-11-21:
sql语句如下:
CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INT
BEGIN
SET N := N-1;
RETURN (
SELECT
salary
FROM
employee
GROUP BY
salary
ORDER BY
salary DESC
LIMIT N, 1
);
END
select getNthHighestSalary(2);
执行结果如下:
相关文章
- SQL 清空表数据的方法
- 23篇大数据系列(三)sql基础知识(史上最全,建议收藏)
- SQL中如何删除指定查询出来的数据
- SQL开发知识:MySQL高级进阶sql语句总结大全
- SQL如何使用正则表达式对数据进行过滤
- 中数据SQL Server中删除表中数据的方法(sqlserver删除表)
- Oracle 合并查询 利用SQL实现简洁数据汇总(oracle合并查询)
- 技巧SQL优化:挖掘MySQL的潜在技巧(sql优化mysql)
- MySQL如何有效防止SQL注入攻击?(mysql防sql注入)
- SQL Server数据误删除:如何恢复数据?(sqlserver误删)
- 「MySQL 教程」学习如何拼接 SQL 语句,让你的操作更灵活高效(mysql拼接sql语句)
- MySQL学习笔记:如何通过SQL语句增加字段?(mysql增加字段sql)
- Oracle SQL查询前一天的数据(oracle前一天sql)
- 如何使用 MySQL 导入 SQL 文件?(mysql导入sql文件)
- SQL Server数据类型转换:从文本到数值(sqlserver转数值)
- 数据SQL Server数据提取技巧:跃升互联记录名单(sqlserver提取)
- SQL Server 存储文件:提升数据资产管理能力(sqlserver存文件)
- 让SQL Server支持更多的字体!(sqlserver字体)
- sql探索SQL Server:前六条SQL语句(sqlserver前六条)
- SQL Server互换性:有效地优化数据存储空间(sqlserver互换性)
- 如何将SQL Server数据行转换为列(sqlserver行变列)
- MSSQL如何通过美化格式简化SQL查询(mssql美化格式sql)
- SQL Server中如何去除重复数据(sqlserver去重复)
- Oracle SQL语句实现列数据修改(oracle修改列sql)
- 中的数据使用SQL从Redis中检索数据(使用sql获取redis)
- SQLserver2008将数据导出到Sql脚本文件的方法