Somme de Deux Colonnes de Deux Tables Mysql
J'ai été à la recherche partout pour cela, mais pas de cigare. La fumée commence à sortir de mes oreilles. s'il vous plaît aider
Comment avez-vous somme de deux colonnes de deux tables et de groupe par nom d'utilisateur?
Deux tables.
Recipe Table
recipeid userid recipe_num_views
Meals Table
mealsid userid meal_num_views
Objectif est de faire la somme du nombre de vues dans les deux tables de groupe et par userid
so for example
Recipe Table
1 3 4
2 4 6
Meal Table
1 3 2
2 4 5
select sum(recipe views)+sum(meal views)
WHERE recipe.userid=meals.userid GROUP BY userid
devrait donner
userid=3 , sum=6
userid=4, sum=11
cela donne un bien plus grand nombre.
De la fumée avec pas de cigare, c'est mauvais.
OriginalL'auteur user813801 | 2011-06-24
Vous devez vous connecter pour publier un commentaire.
EDIT:
OK, à partir de vos commentaires, je comprends que lorsque vous avez pour l'utilisateur 3: 4 recettes de & 3 repas, vous obtiendrez la somme de la combinaison de toutes ces lignes =>
sum(recipes)*3 + sum(meals)*4
Essayer cette requête à la place:
Qu'avez-vous exactement?
somethign comme 6 millions de dollars au lieu de 100 000
Pouvez-vous répondre aux questions suivantes: Combien de Recettes pour userid=1? Combien de Repas pour userid=1? Qu'obtenez-vous avec cette requête pour userid=1? (userid=1 est un exemple, vous pouvez choisir ce que vous voulez, mais il doit être le même pour les 3)
ok elle est ici:SELECT sum(num_views) à PARTIR de
recipes
Où userid=3 donne 99316 MAIS SELECT sum(les recettes.num_views) à PARTIR derecipes
,meals
Où les recettes.userid=3 ET recettes.userid=repas.userid donne 2979480OriginalL'auteur manji
Si vous êtes à la sélection de 2 tables dont vous avez besoin pour se joindre à eux.
Sinon, MySQL ne savent pas comment faire le lien entre les deux tables.
Voir:
http://dev.mysql.com/doc/refman/5.5/en/join.html
http://www.codinghorror.com/blog/2007/10/a-visual-explanation-of-sql-joins.html
j'ai vérifié et revérifié. ne fonctionne pas
OriginalL'auteur Johan