MySQL Forums
Forum List  »  German

Sortierung von inhalten in Left Joins
Posted by: Vorname Zuname
Date: February 18, 2015 08:05AM

Hallo,
ich habe eine usertabelle und dazu 2 Optionstabellen. Die Optionstabellen haben eine n-Anzahl Einträge pro User mit Datum abgelegt. Ich möchte immer die zu letzt hinzugefügte Option zurück bekommen, erhalte aber immer die 1. Option?

Hier meine Tabellen und SQL
Users:
id | name
1 Max
2 Paul


Option1:
id | user_id | datum | option_id
1 1 2015-01-01 1
2 1 2015-01-02 2
3 2 2015-01-01 1
4 2 2015-01-02 2

Option1_namen
id | name
1 optionX
2 optionY


Für Option2 das selbe



SQL:
SELECT u.*,o1.option1_name,o2.option2_name FROM users AS u
LEFT JOIN (
SELECT o.*, on.name AS option1_name FROM option1 AS o
LEFT JOIN option1_namen AS on ON ( on.id = o.option_id )
WHERE o.date <= '2015-01-10' ) AS o1 ON ( u.id = o1.user_id )
LEFT JOIN (
SELECT o.*, on.name AS option2_name FROM option2 AS o
LEFT JOIN option2_namen AS on ON ( on.id = o.option_id )
WHERE o.date <= '2015-01-10' ) AS o2 ON ( u.id = o2.user_id )
WHERE 1


Statt "optionY" erhalte ich "optionX" zurück. Ein ORDER BY im LEFT JOIN hat mir nichts gebracht. Wie krieg ich ihn jetzt dazu mir den neuesten Eintrag zurück zu geben?

Ich hoffe mir kann jemand helfen. Mir will es grad nicht selbst einfallen. :-/

Gruß

Options: ReplyQuote


Subject
Views
Written By
Posted
Sortierung von inhalten in Left Joins
1081
February 18, 2015 08:05AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.