AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Join sortieren

Ein Thema von mr_chrome · begonnen am 29. Nov 2004 · letzter Beitrag vom 29. Nov 2004
Antwort Antwort
mr_chrome

Registriert seit: 30. Sep 2004
Ort: Markneukirchen
14 Beiträge
 
Delphi 7 Professional
 
#1

Join sortieren

  Alt 29. Nov 2004, 14:24
Hallo,

ich habe mal wieder ein Datenbankproblem.
Ich fülle ein DBGrid mit Daten aus drei Tabellen. Der SQL-Befehl des DataSets ist nach folgendem Prinzip:

SQL-Code:
SELECT a.id, a.bezeichnung, b.bezeichnung, c.bezeichnung
  FROM TableA a
    INNER JOIN TableB b
      ON a.table2id = b.id
        INNER JOIN TableC c
          ON b.table3id = c.id
Die Abfrage funktioniert ohne Probleme.
Ich möchte nun die Datenmenge durch Klick auf die Titelleiste der entsprechenden Spalte sortieren.
Die Prozedur hierfür funktioniert fehlerfrei bei DataSets ohne Joins.
Ich füge an den SelectSQL des Datasets einfach "ORDER BY" + den entsprechenden Spaltennamen, und nach bedarf "DESC" an.
Bei diesem Join hab' ich jedoch das Problem, dass ich 3 Spalten namens "Bezeichnung" habe und die Sortierung mittels "ORDER BY tabelle.feld" durchgeführt werden müsste.
Meine Frage nun, gibt es irgendeine Möglichkeit beim Klick auf den Spaltennamen die jeweilige Tabelle bzw. den Alias des Feldes herauszufinden?
Gibt es andere herangehensweisen?
Ich hoffe, ich konnte mein Problem einigermaßen verständlich beschreiben

Dank und Grüsse im Vorraus,
Thomas
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Join sortieren

  Alt 29. Nov 2004, 14:36
Hai mr_chrome,

mal so ein Schuss ins Blaue.... Versuche es doch mal so:

SQL-Code:
SELECT a.id, a.bezeichnung AS bez_a, b.bezeichnung AS bez_b, c.bezeichnung AS bez_c
  FROM TableA a
    INNER JOIN TableB b
      ON a.table2id = b.id
        INNER JOIN TableC c
          ON b.table3id = c.id
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.338 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Join sortieren

  Alt 29. Nov 2004, 14:39
Bei Oracle geht auch ein order by über den Spalten-Index:
z.B.: order by 1
für den ersten Spaltennamen.
Ob das auch bei anderen DBs geht, weiß ich nicht.
Peter
  Mit Zitat antworten Zitat
mr_chrome

Registriert seit: 30. Sep 2004
Ort: Markneukirchen
14 Beiträge
 
Delphi 7 Professional
 
#4

Re: Join sortieren

  Alt 29. Nov 2004, 14:53
@Jasocul:
Das ist die Lösung! Geht auch beim Interbase.
Ich dachte mir schon, dass die Lösung mal wieder viel einfacher ist als ich dachte

@Sharky:
Das funktioniert leider auch nicht, hatte ich auch schon probiert.
Aber wie gesagt, die Lösung ist einfacher als angenommen.

Viele Dank,
Thomas
Thomas
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz