AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken SQL-Abfrage: Ansatz gesucht

SQL-Abfrage: Ansatz gesucht

Ein Thema von Berni68 · begonnen am 28. Feb 2016 · letzter Beitrag vom 2. Mär 2016
Antwort Antwort
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: SQL-Abfrage: Ansatz gesucht

  Alt 1. Mär 2016, 04:49
Hallo,
geht schon, mit einer Stored Procedure.


Heiko
Heiko
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: SQL-Abfrage: Ansatz gesucht

  Alt 1. Mär 2016, 06:04
Aber auch nur wenn die Anzahl der Spalten bekannt ist
Markus Kinzler
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: SQL-Abfrage: Ansatz gesucht

  Alt 1. Mär 2016, 06:27
Hallo,
ich hätte die jetzt mit Komma getrennt statt einzelne Spalten zu nehmen ...
Aber zusammenbauen kann man das auch ohne die Anzahl zu wissen,
zuerst alle Distinct-Werte holen, zwischenspeichern und dann für jedes Distinct-Projekt auslesen.

Ist aber aufwendig.

Aber: Bekommt man das mit CTE's nicht sogar in einer Query hin???


Heiko
Heiko

Geändert von hoika ( 1. Mär 2016 um 06:29 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Devil1925
Devil1925

Registriert seit: 20. Nov 2015
Ort: Saerbeck
236 Beiträge
 
Delphi 10.3 Rio
 
#4

AW: SQL-Abfrage: Ansatz gesucht

  Alt 1. Mär 2016, 07:38
Ich hätte jetzt eine Lösung wie du die mehreren Zeilen in einer Zeile mit Kommas getrennt ausgibst...

Code:
SELECT stuff((
    SELECT ', ' + cast(Wert as varchar(max))
    FROM Tabelle
      Where bezug = 4711
    FOR XML PATH('')
   ), 1, 2, '');
Philipp
Höllische Grüße
Devil
Meistens sitzt das Problem vor dem Bildschirm! - Leider bin das oftmals ich.
  Mit Zitat antworten Zitat
Benedikt Magnus

Registriert seit: 6. Jul 2012
Ort: Bonn
190 Beiträge
 
FreePascal / Lazarus
 
#5

AW: SQL-Abfrage: Ansatz gesucht

  Alt 1. Mär 2016, 07:38
Ich hatte so ein ähnliches Problem in meinem aktuellen Projekt auch. Habe das damit gelöst, dass ich die Objekte als JSONs in die Datenbank geschrieben habe, das hat wunderbar funktioniert.
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#6

AW: SQL-Abfrage: Ansatz gesucht

  Alt 1. Mär 2016, 08:32
Also es gibt ja mehr oder weniger 2 Varianten
- zentrale Bereitstellung eines (halb)dynamischen Verfahrens / Query
- lokale, also clientseitge Abfrage

Für den ersten Fall muss man mit den gegebenen Möglichkeiten einige Einschränkungen in Kauf nehmen.
Im 2. Fall kann man aber relativ flexibel agieren, wenn man die Query selbst dynamisch zusammenstellt. Hier wären es die Objekte, die jenachdem zusammenzustellen (Liste) wären. Anhand derer kann man dann in einem Query Template entsprechende Case When Spalten einfügen, die für jedes Objekt eine Spalte ausspucken.
Gruß, Jo
  Mit Zitat antworten Zitat
freejay

Registriert seit: 26. Mai 2004
Ort: Nürnberg
276 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: SQL-Abfrage: Ansatz gesucht

  Alt 2. Mär 2016, 07:04
Also in MySQL gibt es die Funktion GROUP_CONCAT: Mit der sollte sich das problemlos machen lassen.

In Firebird gibt's das wohl auch ab Version 2.1. Dort heißt die Funktion LIST.
[Delphi 11.3.1 Enterprise; Win10/11; MySQL; VCL]

Geändert von freejay ( 2. Mär 2016 um 07:07 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 06:38 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