Sortieren nach dem Ergebnis einer Unterabfrage

06/09/2007 - 10:36 von Jan | Report spam
Hallo NG!

Für eine Anwendung muß ich folgende Anforderung realisieren:

Eine Abfrage liefert eine Auflistung, die in einer Reihenfolge sortiert
werden muß, die sich wiederum aus einer Abfrage einer anderen Tabelle ergibt.

Ich habe das so versucht zu lösen:

SELECT * FROM Tabelle1 WHERE ... ORDER BY (SELECT Tabelle2.ID FROM Tabelle2
ORDER BY Tabelle2.Feld1 DESC), Tabellle1.Feld1 DESC;"

Die Unterabfrage auf Tabelle2 gibt die IDs aller Datensàtze aus, und das
sortiert nach Tabelle2.Feld1

Für Tabelle2.ID gibts in Tabelle1 Entsprechungen, und nun sollen die
Datensàtze in Tabelle1 in der mit der Unterabfrage ermittelten Reihenfolge
sortiert werden.

Geht sowas?

Viele Grüße

Jan
 

Lesen sie die antworten

#1 Gerald Aichholzer
06/09/2007 - 10:45 | Warnen spam
Hallo Jan,

Jan wrote:

Für eine Anwendung muß ich folgende Anforderung realisieren:

Eine Abfrage liefert eine Auflistung, die in einer Reihenfolge sortiert
werden muß, die sich wiederum aus einer Abfrage einer anderen Tabelle ergibt.

Ich habe das so versucht zu lösen:

SELECT * FROM Tabelle1 WHERE ... ORDER BY (SELECT Tabelle2.ID FROM Tabelle2
ORDER BY Tabelle2.Feld1 DESC), Tabellle1.Feld1 DESC;"

Die Unterabfrage auf Tabelle2 gibt die IDs aller Datensàtze aus, und das
sortiert nach Tabelle2.Feld1

Für Tabelle2.ID gibts in Tabelle1 Entsprechungen, und nun sollen die
Datensàtze in Tabelle1 in der mit der Unterabfrage ermittelten Reihenfolge
sortiert werden.

Geht sowas?



tut es folgender Befehl:

select Tabelle1.*
from Tabelle1
inner join Tabelle2 on Tabelle2.id = Tabelle1.id
where ...
order by Tabelle2.Feld1 desc

lg,
Gerald

Ähnliche fragen