SQL: Zählen Sie die Anzahl der Vorkommen in der Ausgabespalte und berechnen Sie einen Prozentsatz basierend auf den Vorkommen

Meine SQL-Abfrage ruft eine Liste der Fehlerbehebungsüberprüfungen für eine Firmware ab, z. def-456 ist ein Ticket, das mich auffordert, einen Firmware-Test für ein Produkt durchzuführen. def-456 hat mehrere Unteraufgaben, in denen die Ergebnisse aufgezeichnet werden. Die Ergebnisse werden aufgezeichnet als: id: abc-123, abc-124, abc-125 usw. (wie in der folgenden Tabelle gezeigt). Diese entsprechenden IDs haben das Ergebnis "bestanden" oder "nicht bestanden". Ich muss zwei Werte berechnen ----> 1. Anzahl der Versuche: Im folgenden Beispiel wäre die Anzahl der Versuche 3/5, es gibt 3 Bestanden und 2 Nicht Bestanden (dh Bestanden / Bestanden + Nicht Bestanden), hier kann ich count verwenden Die Methode () weiß jedoch nicht, wie "/ 5" und 2 angehängt werden sollen. Erfolgsrate beim ersten Versuch: Im folgenden Beispiel ist abc-123 fehlgeschlagen, jedoch wurde abc-124 bestanden, abc-125 ist fehlgeschlagen, jedoch wurde abc-126 bestanden und abc-127 Erfolgreich bestanden, bedeutet, dass meine Erfolgsquote 1 von 3 ist (dh 1/3). Wie kann ich diese Werte in SQL anzeigen? Das ist etwas knifflig und ich kann keine Logik dafür finden.

Hier sind meine Daten für def-456:

    value | id| 
    --------------
    fail | abc-123  
    pass | abc-124   
    fail | abc-125   
    pass | abc-126   
    pass | abc-127  

und hier ist o / p ich versuche anzuzeigen:

id   |   value | attempts| %for attempts  | 1st attempt
----------------------------------------------------
abc-123    fail |   3/5  | 60%              | 1/3
abc-124    pass |   3/5  | 60%              | 1/3
abc-125    fail |   3/5  | 60%              | 1/3
abc-126    pass |   3/5  | 60%              | 1/3
abc-127    pass |   3/5  | 60%              | 1/3

Antworten auf die Frage(1)

Ihre Antwort auf die Frage