PySpark code

>>> df.rollup("gpa", "id").sum().sort("id").show()
+----+----+-------+--------+-------------+
| gpa|  id|sum(id)|sum(gpa)|sum(admitted)|
+----+----+-------+--------+-------------+
|NULL|NULL|      6|   11.41|            1|
|3.95|NULL|      1|    3.95|            0|
|3.76|NULL|      2|    3.76|            0|
| 3.7|NULL|      3|     3.7|            1|
|3.95|   1|      1|    3.95|            0|
|3.76|   2|      2|    3.76|            0|
| 3.7|   3|      3|     3.7|            1|
+----+----+-------+--------+-------------+

teradatamlspk code 

>>> df.rollup("gpa", "id").sum().sort("id").show()
+----+----+------+-------+------------+
| gpa|  id|sum_id|sum_gpa|sum_admitted|
+----+----+------+-------+------------+
|3.95|None|     1|   3.95|           0|
|3.76|None|     2|   3.76|           0|
| 3.7|None|     3|    3.7|           1|
|None|None|     6|  11.41|           1|
|3.95|   1|     1|   3.95|           0|
|3.76|   2|     2|   3.76|           0|
| 3.7|   3|     3|    3.7|           1|
+----+----+------+-------+------------+

