我想知道是否有可能将另一个列添加到包含诸如min,max …之类的聚合函数的select语句中。
例子 :
SELECT user_id, MAX(salary) FROM users;
这条语句在sql标准中是正确的吗(在mysql中是它的工作); 它在mysql中的工作,但我想我读到某处说,如果我将聚合函数放在select子句中,除了聚合函数,我什么都不能放,或者如果有group by,则分组列可以在select子句中(在mysql中)
编辑 :
User(user_id, name, last_name, salary)
我想user_id, name, (maximum salary column)从User表中选择;没有子查询就可以做到吗?
user_id, name, (maximum salary column)
User
用户表
User_id, Name, Salary | 1 | user1 | last1 | 500 | | |---|-------|-------|------|---| | 2 | user2 | last2 | 1000 | | | 3 | user3 | last3 | 750 | | | | | | | |
输出必须是user_id, username, lastname, and salary of the user who have the max salary,因此输出必须是:
user_id, username, lastname, and salary of the user who have the max salary
2 user2 last2 1000
告诉您根据您的需求有不同的解决方案。
没有分组依据,没有子查询,简单易用
select * from users ORDER BY salary DESC LIMIT 1