![]() |
Datenbank: Firebird • Version: 2 • Zugriff über: FIBPlus
Daten sortieren - SELECT ... ORDER BY ...
Hallo zusammen,
ich habe mal eine allgemeine Frage zum Thema SELECT und ORDER BY. Als Beispiel nehme ich mal folgende Tabellen: MITARBEITER ================== ID integer (PK) NAME varchar(20) WOHNORT integer WOHNORTE ================== ID integer (PK) WONAME varchar(20) select ID, NAME, WOHNORT from MITARBEITER order by WOHNORT funktioniert ja soweit, wenn ich allerdings nach WONAME sortieren möchte, gibt es ein Problem mit: select ID, NAME, WOHNORT from MITARBEITER order by WOHNORTE.WONAME In einem DBGrid zeige ich den zum Wohnort gehörigen Namen mit einem Lookup-Field des TDataSets an. Aber eine Sortierung auf SQL Ebene scheint mir damit nicht möglich zu sein. Oder liege ich hier falsch? Muss ich nun den select Befehl derart erweitern, dass neben der ID (also WOHNORT) auch der WONAME per inner join mit aufgenommen wird, oder gibt es einen eleganteren Weg? Vielen Dank für Eure Hilfe Viele Grüße Martin |
Re: Daten sortieren - SELECT ... ORDER BY ...
Du kannst ja nicht nach Feldern sortieren, die gar nicht in der Ergebnismenge enthalten sind, deshalb wirst Du IMO nicht um einen JOIN herumkommen.
|
Re: Daten sortieren - SELECT ... ORDER BY ...
Du musst die Tabellen joinen:
SQL-Code:
select
m.ID, m.NAME, w.woname as WOHNORT from MITARBEITER m join WOHNORTE w on w.id = m.wohnort order by W.WONAME; |
Re: Daten sortieren - SELECT ... ORDER BY ...
Zitat:
SQL-Code:
Aber um den Join kommt man in diesem Fall nicht herum, da das Sortierfeld nicht Teil der Quelle ist.
select vorname from buddies order by nachname
|
Re: Daten sortieren - SELECT ... ORDER BY ...
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz