SQL-Probleme mit Abfrage
KikiMiki
- datenbank
0 Ilja
Ich habe ein Problem mit folgendem SQL-Statement
SELECT * FROM
(SELECT a.source_node_id, b.cname AS Komponente
FROM nodeassociation a LEFT OUTER JOIN component b on (a.sink_node_id = b.id)
WHERE association_type = 'issueComponent') x
LEFT OUTER JOIN
(SELECT a.source_node_id, c.vname AS FixVersion
FROM nodeassociation a LEFT OUTER JOIN projectversion c ON (a.sink_node_id = c.id)
WHERE association_type = 'IssueFixversion') y
ON (x.source_node_id=y.source_node_id)
LEFT OUTER JOIN
(SELECT a.source_node_id, c.vname AS BetrifftVersion
FROM nodeassociation a left outer join projectversion c ON (a.sink_node_id = c.id)
WHERE association_type = 'Issueversion') z
ON (x.source_node_id=z.source_node_id)
Damit frage ich Daten aus unserem Tickettool ab. Wleches Ticket hat welche Komponente,Fix Version oder Version
Das Problem ist:
jeder vorgang hat eine jiraissue.id, falls dieser vorgang eine Komponente hat, steht diese komponente mit der ID in der Tabelle nodeassociation.
Es gibt aber Vorgänge die keine Kompnente oder Version haben. Somit auch keinen Eintrag in der nodeassociation Tabelle
Wie muss ich mein Statement ändern das er mir jeden Vorgang zeigt. Egal ob dieser eine Komponente hat oder nicht. Da wo keine Komponente oder Version vorhanden ist soll halt NULL stehen
Jemand eine Idee??
yo,
Wie muss ich mein Statement ändern das er mir jeden Vorgang zeigt. Egal ob dieser eine Komponente hat oder nicht. Da wo keine Komponente oder Version vorhanden ist soll halt NULL stehen
grundsätzlich finde ich deine abfrage komplizierter, als sie wohl sein muss, auf den ersten blick sind die unterabfragen für mich unnötig, aber dazu würde ich gerne mal mehr hintergrundwissen von dir bekommen, sprich deine relevanten tabellen nd wie sie miteinnder in verbindung stehen plus beispieldaten (ganz wichtig).
im grunde genommen ist dein problem von der theorie einfach zu lösen, du nimmst als erstes die tabelle, wo alle vorgänge stehen. dann machst du die OUTER JOINS darauf und gut ist. aber wie gesagt, mir ist dein daten-design noch nicht ganz klar. je besser du es uns erklärst, um so schneller können wir die gute hilfe leisten. ich denke aber mal dein problem ist trivial.
Ilja