J'ai une table pour la société est ici la structure:comment trouver la somme du groupe et trouver le poids dans mysql?
+------------+--------------+-----------+--------+-----------------------------+
| ticker | total_shares | institute | public | sector |
+------------+--------------+-----------+--------+-----------------------------+
| 1JANATAMF | 200000000 | 30.00 | 45.00 | Mutual Funds |
| 8THICB | 5000000 | 0.00 | 0.00 | Mutual Funds |
| AAMRATECH | 55369395 | 28.00 | 42.00 | IT Sector |
| ABB1STMF | 162615643 | 46.44 | 33.56 | Mutual Funds |
| ABBANK | 532459152 | 54.86 | 30.01 | Bank |
| ACI | 28661768 | 37.73 | 28.23 | Pharmaceuticals & Chemicals |
| ACIFORMULA | 45000000 | 22.77 | 11.21 | Pharmaceuticals & Chemicals |
| ACIZCBOND | 267170 | 60.00 | 40.00 | Corporate Bond |
| ACTIVEFINE | 69000000 | 20.80 | 64.42 | Pharmaceuticals & Chemicals |
| AFCAGRO | 50000000 | 48.11 | 21.60 | Pharmaceuticals & Chemicals |
| AFTABAUTO | 95732422 | 47.49 | 22.01 | Engineering |
| AGNISYSL | 51798982 | 16.33 | 70.92 | IT Sector |
| AGRANINS | 24157650 | 18.30 | 43.05 | Insurance |
| AIBL1STIMF | 100000000 | 76.31 | 13.69 | Mutual Funds |
| AIMS1STMF | 41450000 | 0.00 | 0.00 | Mutual Funds |
| AL-HAJTEX | 12691843 | 4.19 | 71.76 | Textile |
| ALARABANK | 946958501 | 10.07 | 46.88 | Bank |
+------------+--------------+-----------+--------+-----------------------------+
Une autre table pour le prix:
+------------+--------+--------+------------+
| ticker | open | high | price_date |
+------------+--------+--------+------------+
| AAMRATECH | 29.80 | 30.20 | 2014-05-04 |
| ABBANK | 27.50 | 27.50 | 2014-05-04 |
| ACI | 235.00 | 244.50 | 2014-05-04 |
| ACIFORMULA | 86.00 | 87.60 | 2014-05-04 |
| ACTIVEFINE | 69.00 | 70.00 | 2014-05-04 |
| BANGAS | 509.50 | 509.50 | 2014-05-04 |
| BANKASIA | 18.00 | 18.40 | 2014-05-04 |
+------------+--------+--------+------------+
des données cours a été court-circuité dans un but. maintenant je voulais trouver le prix pondéré de l'ouverture. la formule de ceci est
A = open*((total_share*(institue/100)+(total_share*(public/100))
la somme de A par secteur comme somme tout le ticker appartient aux fonds mutuels. puis diviser le ticker individuel par exemple 1JANATAMF/somme des fonds communs de placement pour trouver le poids.
Je l'ai utilisé cette requête:
select c.ticker,
p.open*(c.total_shares*(c.institute/100)+c.total_shares*(c.public/100)) as cap
from company as c
left join price as p
on p.ticker =c.ticker
where p.price_date = '2014-05-04';
mais ne peut pas trouver un moyen d'obtenir la somme par secteur et trouver le poids.
Edit:
sortie sera comme
téléscripteur, A/(somme de A avec groupées par secteur) où, A est la valeur formulé selon ticker
sortie volonté être comme:
+------------+--------------+--------------+
| ticker | sum(a) | weight |
+------------+--------------+--------------+
| 1JANATAMF | 5700000000 | 150078540 |
Votre calcul de poids est légèrement confus comment un ticker i.e (1JANATAMF) valeur de chaîne peut être divisible par la valeur numérique comme la somme de secteur, pouvez-vous effacer? –
vous avez mal compris le résultat numérique que je reçois de ma question ci-dessus ou par A. par exemple 1JANATAMF A dire 50 et son appartenir à fonds communs de placement il y a beaucoup d'autres entreprises dans le secteur des fonds communs de placement comme 1JANATAMF, je veux somme de tous alors le poids est calculé de cette manière A/somme de ce secteur. –
S'il vous plaît modifier votre question et fournir les résultats que vous voulez pour les données fournies. –