Schwieriger Vergleich 2er Tabellen Mysql

  • Themenstarter Themenstarter starfoxfs
  • Beginndatum Beginndatum
S

starfoxfs

Hallo zusammen,

Ich stehe momentan vor einem mir nicht lösbaren Problem und zwar hier erstmal die Tabellen

die erste ist 2Modellblockumschl mit HMODTYP und HPARTPLBLK
die zweite 3Standartmenge siehe Bilder im Anhang.

Nun zu meinem Problem.

Ich lese alle Daten aus 3Standartmenge aus, nun gibt es aber bestimmte Daten die für andere Fahrzeuge sind und hier nicht mit ausgelesen werden sollen diese bekomm ich über die Tabelle 2Modellblockumschl.

Tabelle 2Modellblockumschl Erklärung:
HMODTYP = meine FahrzeugID und HPARTPLBLK sind die Teile die angezeigt werden sollen aus 3 Standartmenge wo dies ja auch vorkommt aber das ganze hat einen Hacken dazu weiter unten.

Tabelle 3Standardmenge Erklärung:
Ich lese hier mein Fahrzeugbild nach einem Bildordner und bestimmt Bild aus, zu diesem Bild und Bildordner passen auch nur bestimmte Teile.

Bild= NPLBLK
Bildordner= NPL

Problem:
So jetzt kommt es aber vor das zu diesem Bildordner und Bild 2 Teilepositionen = NPLPARTREF gleich sind z.b. hab ich 2mal die NR 5 und hier liegt dann mein Problem ich will nur 1mal die 5 auslesen und zwar da wo HPARTPLBLK dem Modell entspricht und die andere NR 5 darf nicht mit ausgelesen werden.

Hier mein Quellcode der auch alle Teile anzeigt MIT den Übereinstimmenden HPARTPLBLK zum passenden Teil nur weiß ich nicht wie ich die anderen Teile nicht anzeigen lassen soll (schön zu sehen im Anhang wo die NR 172452 angezeigt wird soll angezeigt werden wo die Position 5 ohne NR 172542 angezeigt wird soll nicht angezeigt werden).

PHP:
<?php
$abfrage6 = "SELECT * FROM 3Standartmenge WHERE NPL = '$picord' AND NPLBLK = '$pic'";
$ergebnis6 = mysql_query($abfrage6)or die(mysql_error());
while ($parts = mysql_fetch_array($ergebnis6))
{

$mdlblschl = mysql_fetch_array(mysql_query("SELECT * FROM 2Modellblockumschl WHERE HMODTYP = '$hmodtyp' AND HPARTPLBLK = '" .$parts["HPARTPLBLK"]. "'"));

echo "" .$mdlblschl["HPARTPLBLK"]. "<br />";
echo "" .$parts["XPARTEXT"]. "<br />";
echo "" .$parts["NPLPARTREF"]. "<br />";

}

	 
?>

Ich hoffe ihr könnt mir weiterhelfen
 

Anhänge

  • 1.JPG
    1.JPG
    20,3 KB · Aufrufe: 24
  • 2.JPG
    2.JPG
    44,1 KB · Aufrufe: 30
  • 3.JPG
    3.JPG
    21,4 KB · Aufrufe: 22
Also wenn ich es richtig verstanden habe hatte ich so ein ähnliches problem!
Die abfrage ist für ein Freund-manager-system! mein problem war das es zu jeden freund das eigene profil mit angeziegt hat (also 5 verschiedene freunde und 5 mal ich selber! Dies hab ich so gelöst, vieleicht hift dir das ja weiter!
PHP:
$result=mysql_query('SELECT * FROM user_account WHERE uid="'.$data_user.'"  AND NOT username="'.$_SESSION["user_nickname"].'" 
					 UNION 
					 SELECT * FROM user_account WHERE uid="'.$data_user1.'"  AND NOT username="'.$_SESSION["user_nickname"].'"');
// Wenn Daten gefunden wurden, dann ausgeben
if (mysql_num_rows($result)>0) {
	while ($rows = mysql_fetch_array($result))
Musst du nur eben umschreiben auf deine bedürfnisse!
 
Nicht so wirklich wenn du dir das rechte Bild anschaust soll nur NR 5 HEBER BAUGR.,SPANNER mit der NR 172542 aus der Mysql DB ausgelesen werden. NR 5 HEBER BAUGR.,SPANNER ohne die NR soll nicht ausgelesen werden. Alle anderen Positionen 1 2 3 ... sollen aber wiederum ausgelesen bzw angezeigt werden.
 
Zurück