如果我想了解每个客户的工资总额,然后GROUP BY查询将如下所示:MySQL的集团通过查询特定条件
SELECT NAME, SUM(SALARY) FROM CUSTOMERS GROUP BY NAME;
但是,如果我不想总和薪水,只需要看所有按名称分组的薪金,那么什么是查询或方法?
如果我想了解每个客户的工资总额,然后GROUP BY查询将如下所示:MySQL的集团通过查询特定条件
SELECT NAME, SUM(SALARY) FROM CUSTOMERS GROUP BY NAME;
但是,如果我不想总和薪水,只需要看所有按名称分组的薪金,那么什么是查询或方法?
尝试使用GROUP BY clause获得所需的结果。
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;
另一个选项:在应用程序站点上组而不是SQL。 –
如何做到这一点的另一个选择,我谈到了他可能想要的所有选项。 @PaulSpiegel – sagi
也许OP只是不知道他的应用程序语言中有什么可能。例如,使用PHP PDO,你可以使用类似'fetchAll(PDO :: FETCH_COLUMN | PDO :: FETCH_GROUP)'的类型,并且保持结果更加灵活,因为它是一个数组。另一方面,解析结果字符串也很简单 - 所以一切都很好:-) –
如果要检索的姓名和薪水每个客户的变化(按姓名和薪水分组)。你可以试试这个。
SELECT name, salary FROM customers GROUP BY name, salary;
也许'GROUP_CONCAT()'而不是'SUM()' –
为什么按'分组'而不是'按排列'? – Strawberry
@Paul group_concat是我正在寻找,但在JPA查询group_concat不起作用。任何想法我可以做JPA查询group_concat? –