mysql返回min和其他字段的问题

问题相关代码,运行from里的子查询时,能给出以下结果

SELECT t_avg.id, MIN(avgsal)
FROM (
SELECT department_id id, AVG(salary) avgsal
FROM employees
GROUP BY department_id
) t_avg

运行结果及报错内容
id        avgsal  

(NULL) 7000.000000
10 4400.000000
20 9500.000000
30 4150.000000
40 6500.000000
50 3475.555556
60 5760.000000
70 10000.000000
80 8955.882353
90 19333.333333
100 8600.000000
110 10150.000000

但整体运行时候,给出的结果是
id  MIN(avgsal)  

(NULL) 3475.555556

我发现

t_avg.id返回的好像其实就是from表里的第一个值,请问这是什么原因

你这语法不对呀
外层查询也使用了聚合函数,但是外层没有group by语句

如果是要关联查询,应该是:
select 字段 form 表名 where 字段 in(子查询)