SQL Ausgabe hintereinander schreiben bei drei Abfragen
Hallo Community,
ich habe da mal eine Frage zu SQL abfragen bei der ich nicht mehr weiter komme.
Die Abfrage sieht wie folgt aus
Die Abfrage funtkioniert bis zum te2, bis da bekomme ich meine Ausgabe hin aber sobald ich noch ein SELECT hinzufügen möchte klappt dies nicht mehr.
Gibt es dort einen Trick oder ist das so nicht möglich.
ich habe da mal eine Frage zu SQL abfragen bei der ich nicht mehr weiter komme.
Die Abfrage sieht wie folgt aus
SELECT
te1.TEST,
te1.Fakt1,
te2.Fakt2,
te3.Fakt3
From
(SELECT
a.cArtNr AS 'TEST',
CAST(s.fWertDecimal AS decimal(17,2)) AS 'Fakt1'
FROM tArtikel a
INNER JOIN tArtikelAttribut t
ON a.kArtikel = t.kArtikel
INNER JOIN tArtikelAttributSprache s
ON t.kArtikelAttribut = s.kArtikelAttribut
WHERE t.kAttribut = '500'
AND s.fWertDecimal > 0
)te1
inner join
(SELECT
a.cArtNr AS 'TEST',
CAST(s.fWertDecimal as decimal(17,2)) AS 'Fakt2'
FROM tArtikel a
INNER JOIN tArtikelAttribut t
ON a.kArtikel = t.kArtikel
INNER JOIN tArtikelAttributSprache s
ON t.kArtikelAttribut = s.kArtikelAttribut
WHERE t.kAttribut = '600'
AND s.fWertDecimal > 0 )te2
inner join
(SELECT
a.cArtNr AS 'TEST',
CAST(s.fWertDecimal as decimal(17,2)) AS 'Fakt3'
FROM tArtikel a
INNER JOIN tArtikelAttribut t
ON a.kArtikel = t.kArtikel
INNER JOIN tArtikelAttributSprache s
ON t.kArtikelAttribut = s.kArtikelAttribut
WHERE t.kAttribut = '900'
AND s.fWertDecimal > 0 )te3
ON te1.TEST = te2.TEST or te1.TEST = te3.TEST
Die Abfrage funtkioniert bis zum te2, bis da bekomme ich meine Ausgabe hin aber sobald ich noch ein SELECT hinzufügen möchte klappt dies nicht mehr.
Gibt es dort einen Trick oder ist das so nicht möglich.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 391337
Url: https://administrator.de/contentid/391337
Ausgedruckt am: 20.11.2024 um 02:11 Uhr
2 Kommentare
Neuester Kommentar
Ohne die Daten und dein Zeil zu kennen ist es unmöglich über die sinnhaftigkeit deiner Abfrage zu urteilen aber für mich sieht das nach groben Unfug aus. Du joinst mehrere gleichartige Tabellen, wäre hier vielleicht ein UNION ALL besser?
Konkret hast du einen Syntaxfehler. Die Join-Condition für te2 gehört in Zeile 30, also die Syntax wäre JOIN ... ON ... JOIN ... ON.
Konkret hast du einen Syntaxfehler. Die Join-Condition für te2 gehört in Zeile 30, also die Syntax wäre JOIN ... ON ... JOIN ... ON.