Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Ich habe ein Problem, und zwar möchte ich zwei Tabellen Werte Vergleichen, nur

weiß nicht so genau wie ich das am besten mache :

Mein erste Ansatz war wie folgt :

Aus der Tabelle A mit eine For-Schleife

den Wert Menge auszulesen und eigendlich innerhalb der For-Schleife denn Wert Menge aus der Tabelle B auslesen. Nur dann fiel mit ja ein, wie soll ich die beiden Werte während der Laufzeit Vergleichen - :confused: .

Habt ihr eventuell eine Idee ?

Sinn und Zweck der ganzen Sache ist das ich in der Tabelle B einen Wert hinterlegen und diese mit dem von A verglichen wird, wenn nun diese gleich oder kleiner als in B hinterlege Wert ist.

Soll mir das Angezeit werden,.

Sprich ein Meldebestand.

Schon einmal danke für eure Hilfe

Tool-Time :)

Geschrieben

Als Tipp ... mache das doch mit einem Select Befehl und vergleiche das Ergebnis.

Zum Beispiel:

SELECT SUM(tabelle1.feld) AS Wert1, SUM(tabelle2.feld) AS wert2 FROM tabelle1 INNER JOIN tabelle2 ON tabelle2.keyfeld = tabelle1.keyfeld

Wenn Du das Ergebnis auswerten willst, kannst Du nun beide Felder miteinander vergleichen.

Oder Du fügst die Bedingung die Du für die Werte aus den beiden Tabellen hast einfach noch in den Select Befehl ein. Das ist meiner Meinung am einfachsten. Somit brauchst Du nur das Ergebnis ausgeben.

SELECT SUM(tabelle1.feld) AS Wert1, SUM(tabelle2.feld) AS wert2 FROM tabelle1 INNER JOIN tabelle2 ON tabelle2.keyfeld = tabelle1.keyfeld WHERE wert1 <= wert2

Gruss Metaner

  • 2 Wochen später...
Geschrieben

Sorry, aber da finde ich nicht so ganz durch, vielleicht liegt es daran das ich mich an einer for schleifen lösung mit if und else Abfrage verbissen habe.

So langsam bekomme ich auch die Abfrage zwischen den beiden Datenbanken bzw. Tabellen hin.

Hat sonst noch jemand ein Idee ?

Danke noch mal :)

MfG Tool-Time

Geschrieben

Bin nun selber drauf gekommen, mal sehen ob der Algorythmus den Aplha Test übersteht :)


# Auswertung
#

# Lager Datenbank
#
$db_lager0 = mysql_connect($mysqlhost, $mysqluser, $mysqlpassword);
$sqlab_lager0 = "select * from lager";
$res_lager0 = mysql_db_query("$mysqldb",$sqlab_lager0);
$num_lager0 = mysql_num_rows($res_lager0);
# Meldung Datenbank
#
$db_meldung = mysql_connect($mysqlhost, $mysqluser, $mysqlpassword);
$sqlab_meldung = "select * from meldung";
$res_meldung = mysql_db_query("$mysqldb", $sqlab_meldung);
$num_meldung = mysql_num_rows($res_meldung);
# Meldungs Vair
echo"<table>";
echo"<tr>";
for($i=0; $i<$num_lager0; $i++)
{
$modell = mysql_result($res_lager0, $i, "modell"); // lager
$menge = mysql_result($res_lager0, $i, "menge"); // lager

for($m=0;$m<$num_meldung;$m++)
{
$produkt = mysql_result($res_meldung, $m, "produkt"); // meldung
$melde = mysql_result($res_meldung, $m, "min"); // meldung
$herstelle = mysql_result($res_meldung, $m, "hersteller"); //meldung
}
if($modell=$produkt)
{
if($melde>=$menge)
{
# Tabelle
#

echo"<td bgcolor='$farbe_t'><div align='center'><font color='$schrift'><b>Produkt </b></div></font></td>";
echo"<td bgcolor='$farbe_t'><div align='center'><font color='$schrift'><b>Hersteller </b></div></font></td>";
echo"<td bgcolor='$farbe_t'><div align='center'><font color='$schrift'><b>Menge </b></div></font></td>";
# Variable
#
echo"</tr><tr>";
echo"<td> </td>";
echo"<td> </td>";
echo"<td> </td>";
echo"</tr><tr>";

echo"<td bgcolor='$farbe_au'><div align='left'><font color='$schrift'><b>$modell </b></div></font></td>"; // lager wert
echo"<td bgcolor='$farbe_au'><div align='left'><font color='$schrift'><b>$herstelle </b></div></font></td>"; // meldung wert
echo"<td bgcolor='$farbe_au'><div align='center'><font color='$red'><b>$menge </b></div></font></td>"; // lager wert
echo"</tr>";

}
else
{

}
}
echo"<p><p>";
echo"</div>";

}
.
.
.
[/php]

Scheint so weit zu laufen :)

bis denn Tool-Time :)

Geschrieben


select table2.qty, table1.productid from table1 left join table2 on table1.productid = table2.productid where table1.value <= table2.value

qty = anzahl

productid = bestellnummer

value = vergleichswert

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...