我收到此错误:
错误:列" programmer.pname"必须出现在GROUP BY子句中或用于聚合函数
第1行:从程序员中选择pname,min(age(doj));
我有一个名为programmer
的表格,列dob
,doj
有日期。
此处doj
是加入日期。
我想找到所有程序员中经验最少的程序员。
这是我的尝试:
SELECT pname, min(age(doj)) FROM programmer;
我收到了上述错误。
那是什么programmer.pname
以及对上述内容的正确查询是什么?
答案 0 :(得分:2)
GROUP BY
语句与聚合函数结合使用,将结果集分组为一列或多列。
select pname, min(age(doj))
from programmer
group by pname
找到所有程序员经验最少的程序员
select pname
,min(age(doj)) mindoj
from programmer
group by pname
order by mindoj limit 1
或
select pname,doj
from programmer
order by doj limit 1
在这种情况下,您可能拥有多名经验最少的程序员(程序员具有相同的最低经验)
select pname,doj
from programmer
where doj=(select min(doj) from programmer)
什么是programmer.pname以及什么是正确的查询 以上?
程序员。 pname = tablename 。 columnname 强>