Somma dei valori minimi per ogni voce da una tabella correlata
Domanda
Supponiamo che io ho 2 tabelle, query e rango. Vorrei sapere se è possibile trovare la somma dei valori minimi per ogni query nella tabella rango?
Una voce alla tabella di rango è fatta solo in cui un utente fa clic su un risultato per una determinata query.
rango (id, key, value) query (id, key, value)
dove rank.id = query.id
Istantanea di 5 voci
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| |
Soluzione
Utilizzare una sottoquery per unirsi al tavolo query
, in questo modo:
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
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow