2016-03-22 7 views
-3

Wie kann ich die neuesten erfolgreichen Tests per Programm erhalten? Die neueste man die höchste Build- Nummer hat und erfolgreich sind alle PASSED und VON CONCERNMySQL - Zeige den letzten erfolgreichen Test

Meine Tabelle sieht wie folgt aus (I ausgeschlossen einige Spalten aus dem Original):

+----+---------+----------------+-------+-----------+---------+ 
| ID | Test | Program  | Build | Result | Tester | 
+----+---------+----------------+-------+-----------+---------+ 
| 1 |  1 | Mag. & Speech | 1825 | PASSED | Dale | 
| 2 |  2 | Scr. Reader | 1820 | PASSED | Aadarsh | 
| 3 |  2 | Scr. Reader | 1821 | PASSED | Tony | 
| 4 |  2 | Scr. Reader | 1824 | PASSED | Tony | 
| 5 |  2 | Mag. & Speech | 1820 | PASSED | Colin | 
| 6 |  2 | Mag. & Speech | 1821 | FAILED | Dale | 
| 7 |  2 | Mag. & Speech | 1822 | OF CONCERN| Tony | 
| 8 |  2 | Mag.   | 1820 | PASSED | Steven | 
| 9 |  3 | Scr. Reader | 1820 | NOT TESTED| Aadarsh | 
+----+---------+----------------+-------+-----------+---------+ 

Als Ergebnis möchte ich die Zeile (ID) 1,4,7,8 bekommen. Wie Sie sehen können, hat kein Programm mehr als einen Test.


Edit: Added einige fehlende Informationen auf den Tisch. Leider habe ich die Fragen nicht mehr, ich habe versucht, aber ich kam nicht sehr weit mit nur Wo und Bestellen Sie durch.

+0

Ja, ich versuchte, von Build zu bestellen, filtert alle erfolgreichen Tests und dann durch Testen und Programmgruppierung. – tuhang

Antwort

2

sollte diese Abfrage den Trick

SELECT  t3.* 
    FROM (
     SELECT  t1.ID, 
        MAX(t1.Build) as Build 
      FROM table_name t1 
      WHERE LOWER(t1.Result) NOT IN('n/a', 'not completed', 'not tested') 
     GROUP BY t1.Test, t1.Program 
     ) t2 
INNER JOIN table_name t3 
     ON t3.ID = t2.ID 
     AND t3.Build = t2.Build; 

Leider durch Einschränkungen Gruppe durch ein bisschen kompliziert es ist.

Bitte ersetzen table_name (in 2 Plätzen) mit Eigennamen

+0

Ja, Sie haben Recht. Ich habe eine Unterabfrage entfernt, die nicht benötigt wird. – piotrgajow

+0

Leider bekomme ich immer noch unvollständige Tests. – tuhang

+0

Was meinst du? Welchen Wert erhalten Sie? – piotrgajow

Verwandte Themen