php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 06-05-2008, 11:02
barca
 Newbie
Links : Onlinestatus : barca ist offline
Registriert seit: May 2008
Beiträge: 14
barca ist zur Zeit noch ein unbeschriebenes Blatt
Standard Voting-Statistik

Hallo zusammen!


Ich bastle gerade eine Art "WettSeite" und habe folgendes Problem:

Ich möchte gerne bei jedem Spiel, dass die User die Möglichkeit haben eine kleine Statistik zu sehen.

Zum Beispiel bei Spiel: Deutschland # Italien
[list=1]
wette prozent[*]0:0 90%[*]1:1 5%[*] 2:1 5%[/list=1]

d.h 90% der user haben 0:0 getippt,5% 1:1 und 5% 2:1.
Ich habe eine Datenbank Tabelle, wo Eingaben von User drauf stehen, und was sie getippt haben.

UserID GameID goals_teams1 goals_teams2

Ich muss erstmal die Daten aus der Datenbank mit SQL Anfragen rausholen und dann mit eine PHP Funktion die Statistik berechnen.
Kann mir vielleicht jemand helfen bzw. Tipps geben?

vielen Dank!
Mit Zitat antworten
  #2 (permalink)  
Alt 06-05-2008, 14:12
H2O
 PHP Junior
Links : Onlinestatus : H2O ist offline
Registriert seit: Jul 2007
Beiträge: 937
H2O ist zur Zeit noch ein unbeschriebenes Blatt
Standard

PHP-Code:
$sql "
    SELECT
        CONCAT(goals_teams1, ':',  goals_teams2) tipp,
        COUNT(UserId) anzahl
    FROM
        wetten
    GROUP BY
        tipp
    ORDER BY
        anzahl DESC"

__________________
Gruss
H2O
Mit Zitat antworten
  #3 (permalink)  
Alt 06-05-2008, 14:17
arkos
 PHP Senior
Links : Onlinestatus : arkos ist offline
Registriert seit: Feb 2003
Ort: hamburg
Beiträge: 1.015
arkos ist zur Zeit noch ein unbeschriebenes Blatt
Standard

1a php frage
__________________
**********
arkos
**********
Mit Zitat antworten
  #4 (permalink)  
Alt 06-05-2008, 14:27
barca
 Newbie
Links : Onlinestatus : barca ist offline
Registriert seit: May 2008
Beiträge: 14
barca ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von H2O
PHP-Code:
$sql "
    SELECT
        CONCAT(goals_teams1, ':',  goals_teams2) tipp,
        COUNT(UserId) anzahl
    FROM
        wetten
    GROUP BY
        tipp
    ORDER BY
        anzahl DESC"

Danke für deine Antwort
wie kann man im PHP Prozent berechnen?
Also (anzahl*100)/summe_von_tipp
Mit Zitat antworten
  #5 (permalink)  
Alt 06-05-2008, 14:42
H2O
 PHP Junior
Links : Onlinestatus : H2O ist offline
Registriert seit: Jul 2007
Beiträge: 937
H2O ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von barca
wie kann man im PHP Prozent berechnen?
Also (anzahl*100)/summe_von_tipp
Grundsätzlich genau so. Allerdings musst du $summe_von_tipp vorher in einer separaten Abfrage bestimmen.
Zitat:
Original geschrieben von arkos
1a php frage
Man könnte das natürlich auch mehrheitlich mit PHP lösen. Würde aber etwas komplizierter. Und damit niemand auf die Idee kommt, so etwas auch zu benutzen, mach ich auch kein Beispiel
__________________
Gruss
H2O
Mit Zitat antworten
  #6 (permalink)  
Alt 06-05-2008, 14:55
jahlives
 Master
Links : Onlinestatus : jahlives ist offline
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
jahlives ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
1a php frage
Recht haste drum **move** nach SQL
__________________
Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Mit Zitat antworten
  #7 (permalink)  
Alt 06-05-2008, 15:02
arkos
 PHP Senior
Links : Onlinestatus : arkos ist offline
Registriert seit: Feb 2003
Ort: hamburg
Beiträge: 1.015
arkos ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von H2O
Allerdings musst du $summe_von_tipp vorher in einer separaten Abfrage bestimmen.
muss doch nicht zwingend in einer separaten abfrage passieren, oder? warum nicht gleich n count () per subselect oder join mit im query aufnehmen. so hätte man auch gleich alle parameter zum berechner der prozente...
__________________
**********
arkos
**********
Mit Zitat antworten
  #8 (permalink)  
Alt 06-05-2008, 15:30
H2O
 PHP Junior
Links : Onlinestatus : H2O ist offline
Registriert seit: Jul 2007
Beiträge: 937
H2O ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von arkos
warum nicht gleich n count () per subselect oder join mit im query aufnehmen. so hätte man auch gleich alle parameter zum berechner der prozente...
Ich bezweifle, ob das mit einer GROUP BY-Abfrage überhaupt geht. Und selbst wenn es geht, glaube ich nicht, dass es effizienter ist, die Gesamtanzahl in jeder Zeile neu zu berechnen, als vorher diese Berechnung einmal in einer separaten Abfrage zu machen.
__________________
Gruss
H2O
Mit Zitat antworten
  #9 (permalink)  
Alt 06-05-2008, 15:44
barca
 Newbie
Links : Onlinestatus : barca ist offline
Registriert seit: May 2008
Beiträge: 14
barca ist zur Zeit noch ein unbeschriebenes Blatt
Standard

also,wenn ich das in der selben Abfrage mache,dann sollte so ausschauen,oder?

PHP-Code:
$sql "
    SELECT
        CONCAT(goals_teams1, ':',  goals_teams2) tipp,
        COUNT(UserId) anzahl,
        SUM(COUNT((CONCAT(goals_teams1, ':',  goals_teams2)))
    FROM
        wetten
    GROUP BY
        tipp
    ORDER BY
        anzahl DESC"


Geändert von barca (06-05-2008 um 16:06 Uhr)
Mit Zitat antworten
  #10 (permalink)  
Alt 06-05-2008, 16:01
jahlives
 Master
Links : Onlinestatus : jahlives ist offline
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
jahlives ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
also,wenn ich das in der selben Abfrage mache,dann sollte so ausschauen,oder?
imho wirst du es nicht schaffen eine Summenfunktion auf einen String anzuwenden.
__________________
Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."
Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)
Mit Zitat antworten
  #11 (permalink)  
Alt 06-05-2008, 16:04
barca
 Newbie
Links : Onlinestatus : barca ist offline
Registriert seit: May 2008
Beiträge: 14
barca ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von jahlives
imho wirst du es nicht schaffen eine Summenfunktion auf einen String anzuwenden.
Ich meinte SUM(COUNT) .Sorry siehe geänderte Code oben!

Geändert von barca (06-05-2008 um 16:06 Uhr)
Mit Zitat antworten
  #12 (permalink)  
Alt 07-05-2008, 08:20
H2O
 PHP Junior
Links : Onlinestatus : H2O ist offline
Registriert seit: Jul 2007
Beiträge: 937
H2O ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ich nehm an, du hast selber gemerkt, dass es so nicht geht, weil die GROUP BY Klausel natürlich auch für diese Summe gilt. Und die %-Berechnung ist dann ja auch noch nicht drin. Wenn schon, dann
PHP-Code:
$sql "
SELECT 
    CONCAT(goals_teams1, ':',  goals_teams2) tipp,
    COUNT(UserId) anz,
    CONCAT(COUNT(UserId) * 100 / ( 
        SELECT 
            COUNT(UserId) 
        FROM 
            wetten
    ), '%') prozent
FROM 
    wetten 
GROUP BY
    tipp
ORDER BY
    anz DESC"

Aber wie schon gesagt, da wird das Total für jede Zeile neu gerechnet
__________________
Gruss
H2O

Geändert von H2O (07-05-2008 um 09:56 Uhr)
Mit Zitat antworten
  #13 (permalink)  
Alt 07-05-2008, 09:50
barca
 Newbie
Links : Onlinestatus : barca ist offline
Registriert seit: May 2008
Beiträge: 14
barca ist zur Zeit noch ein unbeschriebenes Blatt
Standard

hmm...was ist generation?
Mit Zitat antworten
  #14 (permalink)  
Alt 07-05-2008, 09:57
H2O
 PHP Junior
Links : Onlinestatus : H2O ist offline
Registriert seit: Jul 2007
Beiträge: 937
H2O ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von barca
hmm...was ist generation?
Ganz einfach ein cut-&paste-Fehler. Stammt aus meiner Testabfrage, habs jetzt korrigiert
__________________
Gruss
H2O
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script ansehen ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script

Mit unserer Lösungen können Sie nahezu jeden B2B / B2C Marktplatz betreiben den Sie sich vorstellen können. Ganz egal ob Sie einen Automarktplatz, Immobilenportal oder einfach einen Anzeigenmarkt betreiben möchten. Mit ebiz-trader können Sie Ihre Anforder

11.10.2018 Berni | Kategorie: PHP/ Anzeigenmarkt
PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:48 Uhr.