Abfrageproblem

rubi

Grünschnabel
Code:
Hallo!

Habe folgende Datenbank:

+-------------------+
| Tables_in_test_OS |
+-------------------+
| main              |
| osn               |
| osrel             |
+-------------------+


main
+----+------+-----+
| ID | Name | Age |
+----+------+-----+
|  1 | hans |  18 |
|  2 | ute  |  17 |
+----+------+-----+

osn
+--------+-----------+
| ID_Osn | OSName    |
+--------+-----------+
|      1 | Windows95 |
|      2 | Suse7.x   |
+--------+-----------+

osrel
+--------+-----+------+
| ID_Osr | fst | sec  |
+--------+-----+------+
|      1 |   1 |    2 |
|      2 |   2 |    0 |
+--------+-----+------+

Er soll mir folgendes ausgeben:

1,hans,18,windows95,suse7.x
2,ute,17,suse7.x

Wie stelle ich das an?


Gruss RubenZ :-)
 
Hy,
Ich weiss nicht ob ich das genau kopiert habe!
Aber hier wäre mien Lösung (Funktioniert nur eventuell ;-) )

<?
$dbverbindung = mysql_connect ($host, $user, $password);
$dbanfragea = "SELECT * from main";
$resulta = mysql_db_query ($dbname, $dbanfragea, $dbverbindung);
while ($ausgabea = mysql_fetch_array ($resulta))
{
$dbanfrageb = "SELECT * from osn WHERE ID_Osn='$ausgabea[ID]'";
$resultb = mysql_db_query ($dbname, $dbanfrageb, $dbverbindung);
while ($ausgabeb = mysql_fetch_array ($resultb))
{
$dbanfragec = "SELECT * from osrel WHERE ID_Osr='$ausgabea[ID]'";
$resultc = mysql_db_query ($dbname, $dbanfragec, $dbverbindung);
while ($ausgabec = mysql_fetch_array ($resultc))
{
if ($ausgabec[fst] == 1)
{
$fst = "windows95";
}
if ($ausgabec[fst] == 2)
{
$fst = "suse7.x";
}
if ($ausgabec[sec] == 1)
{
$sec = "windows95";
}
if ($ausgabec[sec] == 2)
{
$sec = "suse7.x";
}
print ("$ausgabea[ID], $ausgabea[Name], $ausgabea[Age], $ausgabeb[OSName], $fst, $sec");
}
}
}
mysql_close ($dbverbindung)
?>
 
mhhh 3 db queries? ...

beispiel:
PHP:
"SELECT main.id, osrel.name, osl.age FROM main WHERE id=$_GET'[selectedvar]', osrel WHERE id='$_GET[selectedvar]', osl WHERE id='$_GET[selectedvar]'" ...
so wuerde es wahrscheinlich schneller und einfacher gehen...

natuerlich ist das 'nur' ein Denkanstoss.. das was Slater gepostet hat ist auch richtig, bis auf -> mysql_db_query ....sollte mann vergessen.. -> mysql_query und mysql_select_db ist da schon besser.

o(^_^)o
 
Zuletzt bearbeitet:
meine Frage

Hallo!

Habe eine Loesung gefunden. Der Datentyp SET hat mir dabei geholfen.

Danke fuer euere Antworten.


Gruss


RubenZ
 

Neue Beiträge

Zurück