使用WITH ROLLUP的语法如下-
select yourColumnName1,sum(yourColumnName2) from yourTableName group by yourColumnName1 with rollup;
让我们首先创建一个表-
mysql> create table DemoTable1622 -> ( -> EmployeeCountryName varchar(20), -> EmployeeSalary int -> );
使用插入命令在表中插入一些记录-
mysql> insert into DemoTable1622 values('US',4500); mysql> insert into DemoTable1622 values('UK',1500); mysql> insert into DemoTable1622 values('AUS',1700); mysql> insert into DemoTable1622 values('UK',1900); mysql> insert into DemoTable1622 values('US',3900);
使用select语句显示表中的所有记录-
mysql> select * from DemoTable1622;
这将产生以下输出-
+---------------------+----------------+ | EmployeeCountryName | EmployeeSalary | +---------------------+----------------+ | US | 4500 | | UK | 1500 | | AUS | 1700 | | UK | 1900 | | US | 3900 | +---------------------+----------------+ 5 rows in set (0.00 sec)
这是在MySQL中正确使用WITH ROLLUP的查询-
mysql> select EmployeeCountryName,sum(EmployeeSalary) from DemoTable1622 -> group by EmployeeCountryName with rollup;
这将产生以下输出-
+---------------------+---------------------+ | EmployeeCountryName | sum(EmployeeSalary) | +---------------------+---------------------+ | AUS | 1700 | | UK | 3400 | | US | 8400 | | NULL | 13500 | +---------------------+---------------------+ 4 rows in set (0.02 sec)