MySQL分组查询特定条件
如果我想知道每个客户的工资总额,那么分组查询如下:MySQL分组查询特定条件,mysql,jpa,group-by,sql-order-by,Mysql,Jpa,Group By,Sql Order By,如果我想知道每个客户的工资总额,那么分组查询如下: SELECT NAME, SUM(SALARY) FROM CUSTOMERS GROUP BY NAME; 但是,如果我不想要工资总额,只需要查看按名称分组的所有工资,那么查询或方法是什么 尝试使用以获得所需的结果 SELECT NAME,SALARY FROM CUSTOMERS GROUP BY NAME; 那要看你想拿多少薪水了 选项1->最大值: SELECT NAME, max(SALARY) FROM CUSTOMERS GR
SELECT NAME, SUM(SALARY) FROM CUSTOMERS GROUP BY NAME;
但是,如果我不想要工资总额,只需要查看按名称分组的所有工资,那么查询或方法是什么 尝试使用以获得所需的结果
SELECT NAME,SALARY FROM CUSTOMERS GROUP BY NAME;
那要看你想拿多少薪水了 选项1->最大值:
SELECT NAME, max(SALARY) FROM CUSTOMERS GROUP BY NAME;
选项2->最低要求:
SELECT NAME, min(SALARY) FROM CUSTOMERS GROUP BY NAME;
选项3->它们的列表:
SELECT NAME, group_concat(SALARY separator ',') FROM CUSTOMERS GROUP BY NAME;
最后一个选项->不重要:
SELECT NAME,SALARY FROM CUSTOMERS GROUP BY NAME;
如果要检索每个客户的姓名和薪资变化(按姓名和薪资分组)。你可以试试这个
SELECT name, salary FROM customers GROUP BY name, salary;
可能是
GROUP\u CONCAT()
而不是SUM()
为什么“分组依据”而不是“排列依据”?@Paul GROUP\u CONCAT是我一直在寻找的,但在JPA查询组中,它不起作用。你知道我可以在JPA查询中为group_concat做些什么吗?还有一个选项:在应用程序站点上创建group,而不是SQL。还有一个关于如何实现的选项,我讨论了他可能需要的所有选项@PaulSpiegelop可能只是不知道在他的应用程序语言中什么是可能的。例如,对于PHP PDO,您可以使用类似于fetchAll(PDO::FETCH_COLUMN | PDO::FETCH_GROUP)
的东西,并使结果更灵活,因为它是一个数组。另一方面,解析结果字符串也很简单,所以一切都很好:)@sagi group_concat是我一直在寻找的,但在JPA查询组中,它不起作用。你知道我可以在JPA查询中为group_concat做些什么吗?@ShobhitSingh你可以在这里找到你需要的: