我使用 MySQL 8.0 版和 popSQL 作为编辑器。
桌子:
create table account (no int, salary int);
insert into account values
(901,25000),
(902,30000),
(903,21000),
(904,40000),
(905,27000);
现在,我想要薪水最高的人的薪水和薪水。最高工资是 40000,对应的工资是 904。但是,这个查询给了我不同的输出。
-- no and salary of max salary
select no, max(salary)
from account ;
输出为: no max(salary) 901 40000
它正在打印第一个编号和最高薪水。即不同行的数据显示在同一行中。如何解决这个问题???
我的下一个查询的相同类型的问题。
-- no and salary of second highest salary.
select no, max(salary)
from account
where salary not in
(select max(salary) from account);
输出为: no max(salary) 901 30000
而预期是902,30000。
我在堆栈溢出中搜索了不同行的数据显示在一个但没有得到任何帮助的问题。
提前谢谢你。