AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi mehrere Datensätze in einer Zeile?
Thema durchsuchen
Ansicht
Themen-Optionen

mehrere Datensätze in einer Zeile?

Ein Thema von Overclocker · begonnen am 3. Jul 2008 · letzter Beitrag vom 21. Jun 2009
Antwort Antwort
Seite 2 von 2     12   
Ydobon

Registriert seit: 3. Mär 2006
261 Beiträge
 
Delphi 11 Alexandria
 
#11

Re: mehrere Datensätze in einer Zeile?

  Alt 4. Jul 2008, 15:30
Limit kennt Jet-Sql nicht, da muss man es etwas umständlich mit Top simulieren. Die Sql-Anweisung könnte auch ziemlich lang werden, bei vielen Bestellungen, und wenn man wenn man weniger als die maximale Anzahl verwendet wird das Ergebis unvollständig.

In MySql wäre es mit GROUP_CONCAT äußerst einfach, leider scheint Jet so etwas nicht zu kennen. Hier wird für Access selbst eine Funktion zu diesem Zweck angegeben, jetzt müsste man sie nur noch verwenden können.
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#12

Re: mehrere Datensätze in einer Zeile?

  Alt 4. Jul 2008, 16:59
Wozu brauchst du denn die Felder auf diese Weise angeordnet?
Willst du Drucken, Daten exportieren oder dem Benutzer im Grid anzeigen?
(einfach mal querdenken!)

Man kann das Problem auch mit Delphi (ohne SQL) lösen.
Die Abfrage auf die Bestellungen bekommt ein berechnetes Feld hinzu.
Im Event OnCalcFields benötigt man dann eine 2. Abfrage auf die Artikel. (Master-Detail-Verknüpfung)
Mit einer Schleife über die Artikeldaten verkettet man die Artikelnummern zu einen String (Nummer durch Komma getrennt) und weist das dem berechneten Feld zu.
Das ist natürlich langsamer als per SQL; aber das Problem lässt sich mit der der Jet-Engine wahrscheinlich nicht lösen.
Andreas
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#13

Re: mehrere Datensätze in einer Zeile?

  Alt 4. Jul 2008, 17:22
Zitat von shmia:
Man kann das Problem auch mit Delphi (ohne SQL) lösen.
Angehängte Dateien
Dateityp: zip adotest_146.zip (13,0 KB, 27x aufgerufen)
  Mit Zitat antworten Zitat
Overclocker

Registriert seit: 10. Jan 2007
215 Beiträge
 
#14

Re: mehrere Datensätze in einer Zeile?

  Alt 19. Jun 2009, 21:26
Hi,

jetzt steh ich vor einem ähnlichen problem, allerdings nicht mehr in access, sondern auf einem sql 2005 server.

kennt von euch jemand auch hierfür eine funktion? Group_concat etc. laufen nur auf mysql was ich darüber gefunden habe aber für TSQL habe ich noch nichts gefunden

wäre dankbar für eure hilfe
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#15

Re: mehrere Datensätze in einer Zeile?

  Alt 19. Jun 2009, 21:36
Wie gesagt nennet man Pivot oder Kreuztabelle
http://www.itrain.de/knowhow/sql/tsql/pivot/index.asp
Markus Kinzler
  Mit Zitat antworten Zitat
Overclocker

Registriert seit: 10. Jan 2007
215 Beiträge
 
#16

Re: mehrere Datensätze in einer Zeile?

  Alt 19. Jun 2009, 21:42
ja, aber was ich irgendwie rausgelesen habe, dass es eher nicht für mein vorhaben geeignet ist.
mein ziel ist, aus diesen daten

Delphi-Quellcode:
Bestellnr Artikelnr
1 580
1 581
1 582
1 583
2 585
2 586
folgendes ergebnis zu bekommen

1 580 581 582 583
2 585 586


sozusagen 2 zeilen zu erhalten mit DYNAMISCHER spaltenanzahl, je nachdem wieviele daten vorhanden sind?!?!
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#17

Re: mehrere Datensätze in einer Zeile?

  Alt 20. Jun 2009, 07:21
Dann musst du die Abfrage manuell zusammenfiemeln.
Markus Kinzler
  Mit Zitat antworten Zitat
Overclocker

Registriert seit: 10. Jan 2007
215 Beiträge
 
#18

Re: mehrere Datensätze in einer Zeile?

  Alt 21. Jun 2009, 15:00
tja das wenn ich wüsste wie ich das anstellen soll

dann hätte ich ja das problem nicht, hab schon alles versucht, group concat etc. gibts ja für mysql,läuft aber nich auf tsql und für tsql habe ich bis jetzt leider echt noch nichts gescheites gefunden ((
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 15:13 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