SQL para HQL
Estou horas quebrando minha cabeca na parede e nao consigo fazer uma query complexa para HQL, as mais simples tudo bem... mas essa aqui para deixar na tabela abaixo...
SELECT a1.type, a1.value, COUNT(*) AS a1.count, a1.sum, COUNT(*)/a1.sum * 100 AS percentage
FROM Answer a1
JOIN (SELECT type, SUM(total) AS sum
FROM (SELECT type, value, COUNT(*) AS total
FROM Answer
GROUP BY type, value) AS sub1
GROUP BY type) AS a2
ON a1.type = a2.type
GROUP BY a1.type, a1.value
+------+--------------------+-------+------+------------+
| type | value | count | sum | percentage |
+------+--------------------+-------+------+------------+
| 600 | 1 | 1 | 4 | 25.0000 |
| 600 | 2 | 3 | 4 | 75.0000 |
| 601 | 2 | 1 | 1 | 100.0000 |
| 602 | 1 | 1 | 1 | 100.0000 |
| 603 | 8 | 1 | 1 | 100.0000 |
| 717 | John | 1 | 1 | 100.0000 |
SELECT a1.type, a1.value, COUNT(*) AS a1.count, a1.sum, COUNT(*)/a1.sum * 100 AS percentage
FROM Answer a1
JOIN (SELECT type, SUM(total) AS sum
FROM (SELECT type, value, COUNT(*) AS total
FROM Answer
GROUP BY type, value) AS sub1
GROUP BY type) AS a2
ON a1.type = a2.type
GROUP BY a1.type, a1.value
+------+--------------------+-------+------+------------+
| type | value | count | sum | percentage |
+------+--------------------+-------+------+------------+
| 600 | 1 | 1 | 4 | 25.0000 |
| 600 | 2 | 3 | 4 | 75.0000 |
| 601 | 2 | 1 | 1 | 100.0000 |
| 602 | 1 | 1 | 1 | 100.0000 |
| 603 | 8 | 1 | 1 | 100.0000 |
| 717 | John | 1 | 1 | 100.0000 |
Fsa
Curtidas 0