2016-08-19 2 views
0

Ich habe eine Tabelle die Preise, die wie folgt aussieht:PHP Zählen Datensätze aus anderen Tabellen-ID mit

id - Preis - Menge

Ich habe eine andere Tabelle Gewinner, die die Benutzer welchen Preis hält habe gewonnen. Es sieht wie folgt aus:

id - Benutzer-ID - priceid

So ist die id meiner Tabelle Preise ist der Verkauf als priceid in der Gewinner-Tabelle.

Jetzt sagen wir, ich möchte die Anzahl der Gewinner, die Preis X gewonnen haben und Preis X hat ID 1 zum Beispiel. Ich habe versucht, eine Abfrage zu schreiben, aber es scheint nicht viel Sinn zu machen.

$price = "X"; 
$count = $conn->fetchAll("SELECT winners.id FROM winners INNER JOIN prices ON winners.priceid=prices.id WHERE prices.price='".$price."'"); 

Wenn jemand mir helfen kann ich es sehr viel

Vielen Dank im Voraus zu schätzen wissen!

+1

nachschlagen Tutorials mit MySQL- JOIN' – Epodax

+0

@Epodax hey vielen Dank für Ihre Antwort, die ich alles über vergessen verbindet lol, ich mit einem meiner Frage aktualisiert Inner Join-Abfrage, aber es scheint immer noch nicht zu funktionieren, leider –

+0

Mögliche Duplikate von [Hinzufügen von SUM() zu mySQL JOIN Abfrage] (http://StackOverflow.com/Questions/8447596/Adding-SUM-To-Mysql- Join-Abfrage) – Shadow

Antwort

0

Wenn Sie die Nummer wollen, dass der Preis X gewonnen haben:

$count = $conn->fetchAll("SELECT COUNT(winners.id) AS nb_winners FROM winners INNER JOIN prices ON winners.priceid=prices.id WHERE prices.price='".$price."'"); 
+0

Vielen Dank Freund! Ich war in der Nähe :) –

+0

Aber ich habe ein kleines Problem, wenn ich dump $ zähle ich bekomme so etwas "count_winners": "1" Ich brauche nur die Nummer, weil ich einen Scheck, wenn ($ betrag> $ count) –

+0

Sie können tue das: if ($ betrag> $ count-> count_winners), oder du bekommst direkt die Zahl, aber das hängt davon ab, welche db-Bibliothek du verwendest. – vincenth

Verwandte Themen