Join anpassen mit Bedingung?
hawkmaster
- datenbank
Hallo zusammen,
ich habe einen etwas größeren JOIN über meherere Tabellen:
SELECT
B.ElementValue, C.English AS ElementValueDisplay, I.Interface, I.InternalName, I.ControlDef,I.GroupDef,I.TextID, A.InstallElementsID,
G.English AS ElementDisplay, A.TabsJobtkID, E.English AS TabNameLanguage, A.PrintSystemsID, D.TabDef, A.DisplayState,
B.DefaultValue
FROM
elementgroups A
LEFT JOIN
elementvalues B ON A.ElementGroupID = B.ElementGroupID
LEFT JOIN
text_printers C ON C.TextID = B.TextID
LEFT JOIN
tabsjobtk D ON A.TabsJobtkID = D.TabsJobtkID
LEFT JOIN
install_elements I ON I.InstallElementsID = A.InstallElementsID
LEFT JOIN
text E ON E.TextIdentifier = D.Tabname
LEFT JOIN
text G ON G.TextID = I.TextID
WHERE
A.PrintSystemsID = '{$printsystemsid}'
ORDER BY
A.ElementGroupID ASC
")
Soweit funktioniert alles.
Ich habe eine Änderung vorgenommen in der Datenbank. Es gibt eine zusätzliche Tabelle "text_fin". Darin stehen alle Werte für die D.TabsJobtkID = 19.
Ich müsste also den Join irgendwie erweitern oder mit einer Abfrage machen.
wie "if D.TabsJobtkID = 19
LEFT JOIN
text_fin H ON H.TextID = I.TextID
das weiss ich aber nicht ob und wie man sowas machen kann.
vielen Dank und viele Grüße
hawk
Hallo,
LEFT JOIN
text E ON E.TextIdentifier = D.Tabname
Das ON beim JOIN ist wie das WHERE, du kannst also weitere Bedingungen angeben, z.B.
text E ON (E.TextIdentifier = D.Tabname AND E.irgenwas IS NOT NULL)
Gruß, Kalle
yo,
Das ON beim JOIN ist wie das WHERE, du kannst also weitere Bedingungen angeben, z.B.
das ON ist insbesondere bei OUTER JOINS nicht wie die WHERE klausel...
Ilja