Summe der Mindestwerte für jeden Eintrag aus einer verwandten Tabelle
Frage
Angenommen, ich habe 2 Tabellen, Abfrage und Rang. Ich würde gerne wissen, ob es möglich ist, die Summe der Mindestwerte für jede Abfrage in der Rangtabelle zu finden?
Ein Eintrag in die Rangtabelle erfolgt nur, wenn ein Benutzer auf ein Ergebnis für eine bestimmte Abfrage klickt.
Rang (ID, Schlüssel, Wert) Abfrage (ID, Schlüssel, Wert)
wo rank.id = query.id
Schnappschuss von 5 Einträgen
rank table
-------------
Twp0+x1uZx1Y| Twp1PK8JWhng| 16
Twp1KU6Pgxp4| Twp1VAF0jRyI| 5
Twp2KuoJWR-8| Twp2OR5X7h78| 1
Twp354EADhYY| Twp4AQlqjxWg| 2
query table
------------
Twp0+x1uZx1Y| |sap
Twp0-XWZ3gpk| |
Twp1CIP+oh-Q| |
Twp1KU6Pgxp4| |virtual token
Twp14RxuSBzc| |
Lösung
Verwenden Sie eine Unterabfrage, um sich dem zusammenzuschließen query
Tabelle wie diese:
select
q.id,
q.key,
sum(r.minvalue) as valuesum
from
query q
left join (select min(value) as minvalue, id from rank group by id) r on
q.id = r.id
group by
q.id,
q.key
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow