Ankündigung

Einklappen
Keine Ankündigung bisher.

REchenfehler DB

Einklappen

Neue Werbung 2019

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

  • REchenfehler DB

    Ein frohes und gesundes neues Jahr wünsche ich,

    ich habe ein kleines Problem. Ein subquery in ein Abfrage macht nicht das was ich möchte. Daher also die Frage wo liegt mein Fehler? Kann mir jemand helfen? Es geht um das Subquery result
    PHP-Code:
      /**query select team result */  
    $sql "SELECT T1.`id`,  
                T1.`position_main` AS `pos`,  
                T1.`snr`,  
                T1.`team_id` AS `tID`,  
                T1.`user_id` AS `uID`,  
                 (SELECT SUM(T3.`position_main`)            
                                FROM `results` AS T3          
                                WHERE T3.`team_id` = T1.`team_id`            
                                 AND T3.`event_id`= 128            
                                  AND T3.`team_id` > 1          
                                  AND T3.`position_main` < '9999'          
                                  AND (SELECT COUNT(T2.`id`)                        
                                            FROM `results` AS T2                        
                                            WHERE T2.`team_id` = T1.`team_id`
                                            AND T2.`position_main` < '9999') >= 3  
                   ORDER BY T3.`position_main` ASC  LIMIT 3) AS `result`, /*Das Ergebnis stimmt leider nicht, er soll ja nur die ersten drei Rechnen  rechnet aber alle die unter der event_id und team_id gefundenen*/
        (SELECT COUNT(T4.`id`)  
                       FROM `results` AS T4  
                       WHERE T4.`team_id` = T1.`team_id`  
                        AND T4.`event_id`= 128  
                        AND T4.`position_main` < '9999') AS `member`      

         FROM `results` AS T1  
         WHERE T1.`event_id`= 128  
         AND T1.`team_id` > 1
          AND (SELECT COUNT(T4.`id`)  
                            FROM `results` AS T4  
                            WHERE T4.`team_id` = T1.`team_id`  
                           AND T4.`position_main` < '9999'  
                           AND T4.`event_id`= 128) >= 3  
         AND T1.`position_main` < '9999'      
         ORDER BY `result`, T1.`position_main` ASC"

    Ergebnis:
    29472 3 61 26 1189 95 3
    29501 32 125 26 89 95 3
    29529 60 60 26 80 95 3
    29477 8 54 6 21 116 4
    29484 15 131 6 165 116 4
    29515 46 106 6 914 116 4
    29516 47 87 6 1095 116 4
    29470 1 144 7 26 133 6
    29474 5 129 7 380 133 6
    29487 18 75 7 810 133 6
    29497 28 145 7 34 133 6
    29509 40 126 7 74 133 6
    29510 41 143 7 13 133 6
    29475 6 77 33 585 148 5
    29486 17 133 33 83 148 5
    29494 25 105 33 229 148 5
    29500 31 114 33 100 148 5
    29538 69 101 33 233 148 5
    29476 7 80 13 464 230 6
    29493 24 104 13 907 230 6
    29504 35 127 13 183 230 6
    29508 39 84 13 168 230 6
    29526 57 98 13 661 230 6
    29537 68 135 13 118 230 6

  • #2
    Ja, in der 3.Zeile ist der 4.Buchstabe von links falsch.

    Code?

    Kommentar


    • #3
      vermutlich suchst Du hier Window-Funktionen (row_number() oder rank() oder dense_rank() in dem Falle) und evtl. auch noch einen LATERAL JOIN. Aber das sind jetzt nur wilde Vermutungen ...
      PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

      Kommentar


      • #4
        Ein subquery in ein Abfrage macht nicht das was ich möchte.
        Kannst du die Subquery als einzelne Query posten? Wenn sie ein "falsches" Ergebnis gibt, brauchen wir auch Beispieldaten und ein Beispiel wie das korrekte Ergebnis zu den Daten aussehen müsste.
        [COLOR=#A9A9A9]Relax, you're doing fine.[/COLOR]
        [URL="http://php.net/"]RTFM[/URL] | [URL="http://php-de.github.io/"]php.de Wissenssammlung[/URL] | [URL="http://use-the-index-luke.com/de"]Datenbankindizes[/URL] | [URL="https://www.php.de/forum/webentwicklung/datenbanken/111631-bild-aus-datenbank-auslesen?p=1209079#post1209079"]Dateien in der DB?[/URL]

        Kommentar

        Lädt...
        X