Abfrage-Problem

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Abfrage-Problem

    Hallo.

    Folgendes Problem

    Also zur Erklärung. Ich habe 3 Tabelleneinträge

    nutzer spieler gehalt
    ( Nutzer_ID,Name) (Spieler_ID,Nutzer_ID) (Spieler_ID,vertragsdauer)

    Die Nutzer_ID unter nutzer ist fortlaufend. Die Plätze sind belegt von Usern namens "Robot 1-36". Die Spieler_ID geht von 1-10000 (10000) Spieler, und die Nutzer_ID gibt an welchen nutzer der Spieler gehört. Die Spieler_ID unter gehalt ist gleich wie unter spieler.
    Das ziel ist es die vertragsdauer der Robots unter gehalt zu überprüfen, und auf nen Wert zu fixieren.

    Habe jetzt mal dieses Testscript geschrieben

    Code:

    --------------------------------------------------------------------------------

    // 36 User mit dem Namen Robot im Moment.

    $computerid=mysql_query("SELECT Nutzer_ID from nutzer where Name like 'Robot%' ");

    while
    ($computerid1=mysql_fetch_array($computerid)){

    // 10000 Spieler Spieler_ID(1-10000) und Nutzer_ID(1-36) oben ordnen die 20 Spieler jedem User zu

    $computersp=mysql_query("SELECT Spieler_ID from spieler where Nutzer_ID=".$computerid1[0]."");
    $computersp1=mysql_fetch_array($computersp);
    echo " . $computerid1[0] . ";
    echo "$computersp1[0]";
    }


    --------------------------------------------------------------------------------




    Ausgabe im Moment ist:

    // Erste Zahl sind User mit Namen Robot (im Moment alle 36) Zweite zahl ist der erste Spieler (hier Spieler_ID(5) der zur Nutzer_ID (1) (Robot 1) gehört. Nutzer_ID(2)=Spieler_ID(87) (Robot 2)

    1 . 5 . 2 . 87 . 3 . 125 . 4 . 169 . 5 . 217 . 6 . 263 . 7 . 307 . 8 . 370 . 9 . 406 . 10 . 494 . 11 . 530 . 12 . 569 . 13 . 613 . 14 . 634 . 15 . 763 . 16 . 826 . 17 . 900 . 18 . 937 . 19 . 1054 . 20 . 1115 . 21 . 1133 . 22 . 1161 . 23 . 1199 . 24 . 1295 . 25 . 1316 . 26 . 1386 . 27 . 1472 . 28 . 1557 . 29 . 1638 . 30 . 1662 . 31 . 1694 . 32 . 1730 . 33 . 1746 . 34 . 1823 . 35 . 1859 . 36 . 1918

    Da es im Moment noch 36 Robots sind, sind die ersten Zahlen die User 1-36
    Die zweite Zahl ist der erste Spieler jedes Robots. Aber jeder Robot hat am Start 20 Spieler, un die muss ich alle finden, um deren Vertragsdauer zu fixieren.
    Hätte da jemand ne Idee wie ich das am besten lösen kann ?

    Thx,

    Murmel

  • #2
    mysql bitte ins entsprechende Forum posten *verschieb*

    muss aber leider sagen, dass ich net wirklich durchblicke.


    Mein erstes Problem habe ich bereits hier
    Die Nutzer_ID unter nutzer ist fortlaufend.
    Warum und wie lange das? Was ist, wenn ein Nutzer rausfliegt?

    Kommentar


    • #3
      Das hier und GROUP BY sollte dir dabei helfen.

      Kommentar


      • #4
        Original geschrieben von TobiaZ
        mysql bitte ins entsprechende Forum posten *verschieb*

        muss aber leider sagen, dass ich net wirklich durchblicke.


        Mein erstes Problem habe ich bereits hier Warum und wie lange das? Was ist, wenn ein Nutzer rausfliegt?
        Naja ist ja auch php

        Am Start sind alle eingetrage User Robots, die ein Roboteam besitzen das in der Liga spielt. Das Team hat Spieler usw., also alles was ein User später auch hat.
        Wenn sich ein neuer User anmeldet, ersetzt er den nächsten Robot, mit den Anfangsdaten. Mein Problem ist im Moment das die Spielerverträge (bei den Robots) auslaufen, was zu Problemen führt im Spiel (da ohne Spieler keine Berechnung stattfindet). Also hatte ich gehofft das es evt. einen DB-Befehl gibt, mit denen man das leicht lösen kann.



        PS: und zum generellen Verständnis

        Table nutzer

        Nutzer_ID -- Name --- Vereinsname
        1 ----------- Robot1 -- Robotteam1
        2 ----------- Robot2 -- Robotteam2
        3 ----------- Robot3 -- ""
        4 ----------- Robot4 -- ""

        usw.

        Table spieler

        Spieler_ID --- Name--- Nutzer_ID
        1 ------------- a ---------1 ---> nutzer mit Nutzer_ID 1
        2 ------------- b---------1------------->" "
        3 ------------- c---------3 ---> nutzer mit Nutzer_ID 3
        4 ------------- d---------3------------->" "
        5 ------------- e---------2 ----> nutzer 2
        6 ------------- f ----------4 ----> nutzer 4
        7 ------------- g----------2 -----> nutzer 2
        10000-------- h ---------0 ---> gehört niemandem

        Table gehalt

        Spieler_ID, Vertragsdauer,gehalt
        1
        2
        3
        4
        5
        6
        7
        10000

        @asp2php

        Danke. Muss ich mir mal anschauen


        Zuletzt geändert von Murmel; 14.05.2004, 12:05.

        Kommentar


        • #5
          Naja ist ja auch php
          gehofft das es evt. einen DB-Befehl gibt,
          ansonsten bin ich mir auch nicht klar drüber, was du willst, einerseits klingts nach sql, andererseits nach cronjob ...

          um was geht es? vieleicht solltest du es mal mit einer nicht so konkreten beschreibung versuchen, sondern eher mal abstrahieren und sagen, was du tun willst?
          Die Zeit hat ihre Kinder längst gefressen

          Kommentar


          • #6
            Ich will bei allen Usern die "Robot" heissen, die Vertragsdauer auf 20 stellen, damit das Spiel nicht beeinträchtigt wird.

            Kommentar


            • #7
              Original geschrieben von Murmel
              Ich will bei allen Usern die "Robot" heissen, die Vertragsdauer auf 20 stellen, damit das Spiel nicht beeinträchtigt wird.
              und warum sagst du das nicht?

              da ich nicht weiß, ob update und join so toll harmonieren, würde ich dir spontan empfehlen, per JOIN (siehe post asp2php) die spieler ids festzustellen ... und dann nen UPDATE ala
              PHP-Code:
              $Quäry '
                UPDATE table 
                SET vertragsdauers = 20
                WHERE spieler_id IN (dunno)
              '

              wenns geht kannst du natürlich auch den 'dunno' bereich durch ne subquery ersetzen dann brauchst du nicht den umweg ber das array ...
              Die Zeit hat ihre Kinder längst gefressen

              Kommentar

              Lädt...
              X