![]() |
SQL-Abfrage
Hi,
irgendwie stehe ich auf dem Schlauch: Ich habe eine Tabelle in einer Access-Datenbank die wie folgt aussieht: Name, Geburtsdatum1, PartnerName, GeburtsdatumPartner, Straße, Hausnummer, PLZ, Ort usw. Ich brauch jetzt eine SQL-Abfrage, welches mir den Namen und das Geburtsdatum anzeigt und zwar untereinander. Beispiel: Datensätze in der obigen Tabelle sehen so aus: Müller, 01.01.1970,Meier,23.01.1966,Blastraße,5,80498,Münc hen Schmidt,30.06.1960,Schmitz,02.05.1986,Wiesenstraße ,5,40876 Köln Das Ergebnis soll dann so aussehen: Name Geburtsdatum Müller 01.01.1970 Meier 23.01.1966 Schmidt 30.06.1960 Schmitz 02.05.1986 Kann mir da einer weiterhelfen, wie das SQL-Statement aussehen muß. Vielen Dank Das S |
Re: SQL-Abfrage
Simples SELECT:
Code:
Die eckigen Klammern rühren daher, daß Name ein Schlüsselwort in SQL darstellt und du MS Access verwendest. Willst du Doppelte Anführungszeichen verwenden, mußt du die Schreibweise beachten.
SELECT [Name], Geburtsdatum1 FROM <Tabellenname> ORDER BY [Name]
Grüße Mikhal |
Re: SQL-Abfrage
Ähm..ich schätze mal
SQL-Code:
Greetz
SELECT Name, Geburtsdatum FROM <Tabellenname>
alcaeus [add]F***..zu langsam, ich sollte während der Arbeit nicht Kaffee trinken :mrgreen:[/add] |
Re: SQL-Abfrage
Für die Darstellung der Daten bist du selber verantwortlich. Eine Abfrage liefert dir nur eine Menge zurück. Wie du das dann darstellst, ist deine Sache.
|
Re: SQL-Abfrage
Oder eher:
SQL-Code:
und dann jeweils Name und Geburtsdatum1 in einer Zeile und PartnerName und GeburtsdatumPartner in der nächsten Zeile ausgeben.
SELECT [Name],Geburtsdatum1,PartnerName,GeburtsdatumPartner FROM <Tabellenname>
|
Re: SQL-Abfrage
Wie die Abfrage funktioniert, weiß ich. Aber wie kann ich im Grid die Ansicht eben untereinander gestalten
|
Re: SQL-Abfrage
Query mit einem DataSet verbinden, DBGrid mit eben diesem Dataset verbinden, Query.Open...
Grüße Mikhal |
Re: SQL-Abfrage
:wall: Also, entweder ich bin ein bißchen doof, oder ich habe mein Problem schlecht beschrieben.
Gut, das habe ich gemacht wie du gerade geschrieben hast, dann habe ich alle Felder in einer Zeile. Wie kann ich die Felder aber untereinander packen. Grüße Das S |
Re: SQL-Abfrage
Also ich habe dein Problem verstanden.
Wenn deine Datenbank "Union" kennt, kannst du das lösen. Dann könntest du aber noch ein Sortierungsproblem bekommen, weil dann die Partner nicht mehr direkt untereinander stehen. Aber auch das kann man tricksen. Ansonsten musst du die Darstellung der Daten schon selbst in die Hand nehmen. Dafür wäre dann das TStringGrid eine Lösung. |
Re: SQL-Abfrage
Hallo,
wenn ich das richtig verstanden habe möchte Das S aus einem Datensatz zwei machen. Ich glaube nicht das das mit TQuery, TDatasource und TDBGrid funktioniert. Warum sollte es denn überhaupt funktionieren? Die Datensatzstruktur verstößt gegen alle Regeln der Normalisierung, die mir gerade in den Sinn kommen. Wenn Du die Datensatzstruktur nicht ändern kannst, wird Dir wohl nichts anderes übrigbleiben, als die Abfrage auf ein objektrelationales Modell zu mappen und die Ausgabe selber zu erzeugen. D.h. bilde die Datensatzstruktur mit einem Objekt ab und verwalte die Objekte mit TList. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:26 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-2025 by Thomas Breitkreuz