Hiho!
Ich habe eine Select in MYSQL geschrieben, das funktioniert auch:
select id_spiel,
(select q1.odd as q1 from quoten_info q1 where s.id_spiel_xml_odd=q1.id_odd_xml and q1.id_type=1 and q1.odd_name='1' order by q1.odd DESC LIMIT 1) as q1,
(select q0.odd as q0 from quoten_info q0 where s.id_spiel_xml_odd=q0.id_odd_xml and q0.id_type=1 and q0.odd_name='X' order by q0.odd DESC LIMIT 1) as q0,
(select q2.odd as q2 from quoten_info q2 where s.id_spiel_xml_odd=q2.id_odd_xml and q2.id_type=1 and q2.odd_name='2' order by q2.odd DESC LIMIT 1) as q2
from spiel s;
Dieses soll mir zu jedem Spiel, hier mit id_spiel bezeichnet, die jeweils höchste Heimquote (q1), Unentschiedenquote (q0) und Auswärtsquote (q2) liefern. Als select mit Subquerys ist das ganze aber doch ziemlich schlecht, denn die Abfrage dauert ewig. Als Abfrage mit Joins bekomme ich es nicht hin, da ich immer mehr als eine Quote pro Spiel raus bekomme und nicht nach allen drei Sortieren kann. Leider ist die Datenbankstruktur an der Stelle vom Quoten lieferanten vorgegeben.
Hat jemand eine Idee wie ich die Abfrage besser gestalten kann?