2017-11-27 4 views
-1

Ich kann nicht finden, wie die 5 letzten Preise für alle Aktionen, die ich verfolgen, zu bekommen. Hier ist die DB:MySQL - Limit Ergebnisse auf Join

ISIN Tabelle:

mnemonic | name | toFollow 

Preise Tabelle

mnemonic | date | price 

Wie kann ich die 5 letzten Preise für jede ISIN wo toFollow = 1 erhalten?

Danke für Ihre Hilfe

+0

mit Definitionen richtigen Tabelle zu Ihrer Frage Beispieldaten relevant Include –

+0

Verwendung Reihenfolge durch und LIMIT 5 – apomene

+0

Dies ist eine so häufige Frage auf SO, dass es ein eigenes Tag namens "Größte-n-pro-Gruppe" hat. Die zwei verbundenen Fragen bieten viele verschiedene Möglichkeiten, um die gewünschten Ergebnisse zu erhalten. Wählen Sie einen basierend auf Ihren Anforderungen. – Shadow

Antwort

-2

brauchen nur nach Datum, um zu bestellen und dann auf 5 begrenzen:

select a.mnemonic,b.date,b.price 
from isin as a 
    join isin b on (a.mnemonic=b.mnemonic) 
where a.tofollow=1 
order by b.date 
limit 5; 
+1

Frage ist * Wie kann ich bekommen die 5 letzten Preise ** für jede ISIN ** wo toFollow = 1 *, Beachten Sie auch, ich bin nicht der Down-Wähler hier –

+0

Ich ändere die Reihenfolge der Join, jetzt bekommen Sie es – nacho

+1

Auch dies wird nicht funktionieren, weil es nur zurückgibt 5 Datensätze, nicht 5 Datensätze für jede ISIN –