J'ai une table hw1 comme celui-ci:Comment calculer le ratio dans Mysql?
+--------+--------+----------+
| budget | price | count(*) |
+--------+--------+----------+
| high | high | 9 |
| high | low | 13 |
| high | medium | 20 |
| low | high | 60 |
| low | low | 94 |
| low | medium | 162 |
| medium | high | 151 |
| medium | low | 228 |
| medium | medium | 355 |
+--------+--------+----------+
et je voudrais ajouter une autre colonne à droite qui ressemble à "count(*)/budget
taille de l'échantillon » Par exemple, pour la première rangée where budget = high and price = high
, nous obtiendrions un certain nombre calculated by 9/42
(42 est la taille de l'échantillon budgétaire élevé = [9 + 13 + 20])
I ont essayé le code ci-dessous, mais le résultat est nul
select (select count(*) from hw1 where count(*) like 'a%')/
(select count(*) from hw1 where budget like 'b%') from hw1;
Je crois que ce n'est pas dur mais je ne peux pas obtenir le résultat .. quelqu'un pourrait s'il vous plaît m'aider avec gentillesse? Je ne suis pas très expérimenté dans mysql ..
Merci à l'avance.
Merci beaucoup pour l'explication articulée et tous les efforts. J'apprends beaucoup. –
Il existe d'autres modèles de requête qui obtiendront un résultat équivalent. Par exemple, en utilisant une sous-requête corrélée dans la liste SELECT. Cette réponse décrit seulement l'une des approches possibles, en utilisant une "vue en ligne". – spencer7593