Hallo,
ich komme mit folgendem Problem trotz intensiver Suche im Forum sowie GOOGLE nicht weiter.
Betroffen sind drei Tabellen (FIRMA, FIRMA_PROJEKT, PROJEKT)
Die Tabelle FIRMA enthält die Firmenstammdaten, die Tabelle PROJEKT die Projektstammdaten, die Tabelle FIRMA_PROJEKT stellt die Verbindung her,
d.h. in der Tabelle FIRMA_PROJEKT gibt es zwei Spalten, wobei die erste die FirmenID und die zweite die Projektnummer beinhaltet. Die Spalte Projektstatus ist in diesem Zusammenhang nicht relevant.
Durch dieses Konstrukt ist es möglich, beliebig vielen Firmen beliebig viele Projekte zuzuordnen.
Ich möchte nun gezielt nach Firmen suchen, welche mehrere Projekte
zugeordnet haben, was ich mit untenstehendem Statement erfolglos versucht habe zu realisieren.
Die Suche nach einem Projekt funktioniert einwandfrei, bei der Kombination zweier oder mehrerer erhält man immer eine leere Menge als Ergebnis.
Vielen Dank für euere Hilfe !
ich komme mit folgendem Problem trotz intensiver Suche im Forum sowie GOOGLE nicht weiter.
Betroffen sind drei Tabellen (FIRMA, FIRMA_PROJEKT, PROJEKT)
Die Tabelle FIRMA enthält die Firmenstammdaten, die Tabelle PROJEKT die Projektstammdaten, die Tabelle FIRMA_PROJEKT stellt die Verbindung her,
d.h. in der Tabelle FIRMA_PROJEKT gibt es zwei Spalten, wobei die erste die FirmenID und die zweite die Projektnummer beinhaltet. Die Spalte Projektstatus ist in diesem Zusammenhang nicht relevant.
Durch dieses Konstrukt ist es möglich, beliebig vielen Firmen beliebig viele Projekte zuzuordnen.
Ich möchte nun gezielt nach Firmen suchen, welche mehrere Projekte
zugeordnet haben, was ich mit untenstehendem Statement erfolglos versucht habe zu realisieren.
Die Suche nach einem Projekt funktioniert einwandfrei, bei der Kombination zweier oder mehrerer erhält man immer eine leere Menge als Ergebnis.
Vielen Dank für euere Hilfe !
PHP-Code:
$OrderFeld = "FIRMA.Firmenname";
if (isSet($kosmetik) && ($kosmetik == "X"))
$SelKosmetik = "and FIRMA.FNr = FIRMA_PROJEKT.FNr and FIRMA_PROJEKT.ProjektNr = 7 and FIRMA_PROJEKT.ProjektStatus > 3";
if (isSet($nail) && ($nail == "X"))
$SelNail = "and FIRMA.FNr = FIRMA_PROJEKT.FNr and FIRMA_PROJEKT.ProjektNr = 29 and FIRMA_PROJEKT.ProjektStatus > 3";
if (isSet($feet) && ($feet == "X"))
$SelFeet = "and FIRMA.FNr = FIRMA_PROJEKT.FNr and FIRMA_PROJEKT.ProjektNr = 90 and FIRMA_PROJEKT.ProjektStatus > 3";
if (isSet($hair) && ($hair == "X"))
$SelHair = "and FIRMA.FNr = FIRMA_PROJEKT.FNr and FIRMA_PROJEKT.ProjektNr = 38 and FIRMA_PROJEKT.ProjektStatus > 3";
if (isSet($accessoires) && ($accessoires == "X"))
$SelAccessoires = "and FIRMA.FNr = FIRMA_PROJEKT.FNr and FIRMA_PROJEKT.ProjektNr = 217 and FIRMA_PROJEKT.ProjektStatus > 3";
$abfrage = sprintf ("%s %s %s %s %s %s %s %s %s %s",
"select FIRMA.FNr, FIRMA.KdNr, FIRMA.Firmenname, FIRMA.Zusatz, FIRMA.Url, ADRESSE.Strasse,",
" ADRESSE.PLZ, ADRESSE.Ort",
"from FIRMA, ADRESSE, FIRMA_PROJEKT",
"where ( ADRESSE.Ort LIKE '%$Ort%' OR ADRESSE.Plz LIKE '$Ort%' ) and FIRMA.Adresse = ADRESSE.AdrIndex",
$SelKosmetik,
$SelNail,
$SelHair,
$SelFeet,
$SelAccessoires,
"order by $OrderFeld");
$res = mysql_query($abfrage);
$num=mysql_num_rows($res);
Kommentar