Hallo liebe entwickler-forum.de Member,
derzeit beschäftige ich mich mit folgender Problemstellung:
Beispieltabellen:
tbl_auto
tbl_boot
tbl_flasche
tbl_container
So. Nun möchte ich je nach typ (tbl_container.typ) die dafür bestimmte Tabelle mit dessen Feldern abfragen. Sprich, ist der Typ 'auto', sollen alle Felder der Tabelle tbl_auto abgefragt werden, usw.
Wenn das dann funktioniert, sollen je nach Tabelle (auto, flasche, boot) auch in dem WHERE Bereich die einzelnen Tabellen abgefragt werden... mit IF?)
Das Ganze habe ich mit IF versucht, da es bei CASE nicht geklappt hat. Nur leider kann ich bei IF nur einen Datenwert abfragen. Wie ich mehrere Abfragen kann... dahinter komme ich einfach nicht. Und die Dokumentation von MySQL finde ich dazu auch sehr dürftig... Auch habe ich noch nicht rausgefunden, wie ich die zweite Bedingung, also das ELSE, weglassen kann, da ich die Ausgabe eigentlich nicht benötige. Ich hoffe es weiß jemand eine Lösung auf das Problem oder vielleicht sogar eine bessere Struktur in diesem Fall, dass man so eine Lösung gar nicht erst benötigt.
FUNKTIONIERT, aber nicht so wie ich will, - ohne IF in WHERE
FUNKTIONIERT NICHT (so wie ichs mir vorstellen würde ^^ - ohne IF in WHERE)
Gruß,
Zeussi
derzeit beschäftige ich mich mit folgender Problemstellung:
Beispieltabellen:
tbl_auto
Code:
-> tbl_auto.id -> tbl_auto.reifen ...
Code:
-> tbl_boot.id -> tbl_boot.segel ...
Code:
-> tbl_flasche.id -> tbl_flasche.verschluss ...
Code:
-> tbl_container.id -> tbl_container.ext_id -> tbl_container.typ -> tbl_container.kommentar -> tbl_container.datum ..
Wenn das dann funktioniert, sollen je nach Tabelle (auto, flasche, boot) auch in dem WHERE Bereich die einzelnen Tabellen abgefragt werden... mit IF?)
Das Ganze habe ich mit IF versucht, da es bei CASE nicht geklappt hat. Nur leider kann ich bei IF nur einen Datenwert abfragen. Wie ich mehrere Abfragen kann... dahinter komme ich einfach nicht. Und die Dokumentation von MySQL finde ich dazu auch sehr dürftig... Auch habe ich noch nicht rausgefunden, wie ich die zweite Bedingung, also das ELSE, weglassen kann, da ich die Ausgabe eigentlich nicht benötige. Ich hoffe es weiß jemand eine Lösung auf das Problem oder vielleicht sogar eine bessere Struktur in diesem Fall, dass man so eine Lösung gar nicht erst benötigt.
FUNKTIONIERT, aber nicht so wie ich will, - ohne IF in WHERE
PHP Code:
SELECT
IF( tbl_container.typ = 'auto', tbl_auto.reifen, NULL ),
tbl_container.id
FROM
tbl_container,
tbl_auto
LIMIT 0 , 30
PHP Code:
SELECT
IF( tbl_container.typ = 'auto', (tbl_auto.id, tbl_auto.reifen) ),
tbl_container.id
FROM
tbl_container,
tbl_auto
LIMIT 0 , 30
Zeussi