php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 01.08.2009, 13:11  
Neuer Benutzer
 
Registriert seit: 01.08.2009
Beiträge: 2
PHP-Kenntnisse:
Fortgeschritten
Zeussi befindet sich auf einem aufstrebenden Ast
Standard [MySQL] IF / CASE: mehrere Werte abfragen

Hallo liebe php.de Member,

derzeit beschäftige ich mich mit folgender Problemstellung:

Beispieltabellen:

tbl_auto
Code:
-> tbl_auto.id
-> tbl_auto.reifen
...
tbl_boot
Code:
-> tbl_boot.id
-> tbl_boot.segel
...
tbl_flasche
Code:
-> tbl_flasche.id
-> tbl_flasche.verschluss
...
tbl_container
Code:
-> tbl_container.id
-> tbl_container.ext_id
-> tbl_container.typ
-> tbl_container.kommentar
-> tbl_container.datum
..
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
PHP-Code:
SELECT 
   
IF( tbl_container.typ 'auto'tbl_auto.reifenNULL ), 
   
tbl_container.id
FROM 
   tbl_container

   
tbl_auto
LIMIT 0 
30 
FUNKTIONIERT NICHT (so wie ichs mir vorstellen würde ^^ - ohne IF in WHERE)
PHP-Code:
SELECT 
   
IF( tbl_container.typ 'auto', (tbl_auto.idtbl_auto.reifen) ), 
   
tbl_container.id
FROM 
   tbl_container

   
tbl_auto
LIMIT 0 
30 
Gruß,
Zeussi
Zeussi ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 01.08.2009, 14:05  
Moderator
 
Benutzerbild von Chriz
 
Registriert seit: 11.05.2008
Beiträge: 6.266
Chriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer Anblick
Standard

Komplett unterschiedliche Tabellen in einer Abfrage auszulesen ist Unfug.

Wie CASE funktioniert steht im Handbuch:
MySQL :: MySQL 5.1 Referenzhandbuch :: 19.2.10.2 CASE-Anweisung
MySQL :: MySQL 5.0 Reference Manual :: 12.8.6.1 IF Statement
__________________
"Nuschel ich?" - "Was?"
Chriz ist offline   Mit Zitat antworten
Alt 01.08.2009, 14:27  
Neuer Benutzer
 
Registriert seit: 01.08.2009
Beiträge: 2
PHP-Kenntnisse:
Fortgeschritten
Zeussi befindet sich auf einem aufstrebenden Ast
Standard

Danke für die Links. Beide kenne ich, aber dort wird nur ein Text ausgegeben im Beispiel, und nicht mehrere Tabellenfelder. Mit einem funktioniert es ja.

Wenn es Unfug ist, dann bitte ich um einen besseren Lösungsansatz. Die drei Tabellen haben noch mehrere, voneinander unterschiedliche Spalten und diese sind auch in der Anzahl unterschiedlich.

Wie kann ich dann diese mit der Container Tabelle verknüpfen???
Zeussi ist offline   Mit Zitat antworten
Alt 01.08.2009, 15:00  
Moderator
 
Benutzerbild von Chriz
 
Registriert seit: 11.05.2008
Beiträge: 6.266
Chriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer AnblickChriz ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von Zeussi Beitrag anzeigen
Danke für die Links. Beide kenne ich, aber dort wird nur ein Text ausgegeben im Beispiel, und nicht mehrere Tabellenfelder. Mit einem funktioniert es ja.

Wenn es Unfug ist, dann bitte ich um einen besseren Lösungsansatz. Die drei Tabellen haben noch mehrere, voneinander unterschiedliche Spalten und diese sind auch in der Anzahl unterschiedlich.

Wie kann ich dann diese mit der Container Tabelle verknüpfen???
Da du die Frage ja nicht nur hier gestellt hast, kannst du sie ja dort auch beantworten lassen. Crosspostings sind hier unerwünscht.

Thread geschlossen.

Thread geöffnet.
Nach kleiner Diskussion. Der verwandte Artikel unter phpforum.de ist hier zu finden:
http://phpforum.de/forum/showthread.php?t=243288
__________________
"Nuschel ich?" - "Was?"

Geändert von Chriz (01.08.2009 um 19:12 Uhr).
Chriz ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

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 an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] dynamische Liste Abfragen verknüpfen und ausgeben. abi PHP Tipps 2009 3 13.05.2009 11:46
[Erledigt] Datumsformat IMAP -> MySQL umwandeln - wie? Namevac PHP Tipps 2009 5 05.05.2009 13:36
Bilder an bestimmten Tagen anzeigen Eclipse16V PHP Tipps 2009 12 15.04.2009 15:28
[Erledigt] Abfragen problem, Werte aus MySQL einlesen matze-pe PHP Tipps 2008 16 17.12.2008 19:51
[Erledigt] Transparente Runde Ecken bei Thumbnial realisieren tomtaz PHP Tipps 2008 3 08.07.2008 01:20
2 Werte per Dropdown abfragen nur einen Wert schreiben thron Datenbanken 13 19.02.2008 18:28
sql abfragen mit variablen Dopedouglaz Datenbanken 3 07.06.2006 14:00
Case optimieren? c-f-g PHP Tipps 2005-2 9 11.10.2005 12:33
Dynamische Werte übergabe? Logik Problem jesus666 PHP Tipps 2005-2 21 03.08.2005 17:30
Werte aus 2 Tabellen abfragen? nsane Datenbanken 10 16.07.2005 12:47
2 switch abfragen in einer datei!? CHRIS PHP Tipps 2005-2 6 29.06.2005 20:17
Switch / Case + while krummzahn PHP Tipps 2005-2 16 05.06.2005 10:46
[Erledigt] Wie kann ich beliebig viele Werte an eine Funktion übergeben PHP Tipps 2005 11 25.01.2005 10:44
Abstatz mit MultiCell Fpdf PHP Tipps 2005 4 12.01.2005 14:09
Switch / Case Problem PHP Tipps 2004 9 28.10.2004 11:18

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
mysql case, mysql if beispiel, mysql case when, case mysql, mysql case beispiel, php case mehrere, case when mysql, mysql if example, mysql where case, mysql case example, php case, mysql if, mysql select case, mysql case when beispiel, php mysql case, http://www.php.de/datenbanken/57681-mysql-if-case-mehrere-werte-abfragen.html, mysql if mehrere bedingungen, if mysql beispiel, mysql case abfrage, mysql when case

Alle Zeitangaben in WEZ +2. Es ist jetzt 08:18 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum