Frank (no reg): Abfrage mit TeilSchlüsseln in verschiedenen Arrays

Beitrag lesen

Hallo,

ja, jetzt wird mir zumindest langsam etwas klarer, was du möchtest. Auf der ersten Seite darf der Benutzer dann mehrere Datensätze auswählen?!

Da kann ich grad heraus sagen: Der zusammengesetzte schlüssel aus Land und Jahr ist an dieser Stelle sub-optimal. :)  Erzeuge einen einzelnen Identifier (z.b. Land + Jahr zusammen: "GER1999") pro Record (!! in beiden Tabellen !!). Einen Unique Constraint über Land und Jahr kannst du ja behalten bzw. trotzdem haben. Dann hast du nur einen Wert von Seite 1 zu Seite 2 zu übergeben und kannst ganz problemlos ein IN verwenden. (Das waren schon wieder viel zu viel Tipps! ;))

Eine andere Variante wäre du machst ein UNION Select für jedes übergebenes Wertepaar, also quasi

SELECT daten1 FROM tabelle2 WHERE Land=$Land1_von_Seite1 AND Jahr=$Jahr1_von_Seite1
UNION
SELECT daten1 FROM tabelle2 WHERE Land=$Land2_von_Seite1 AND Jahr=$Jahr2_von_Seite1
UNION
SELECT daten1 FROM tabelle2 WHERE Land=$Land3_von_Seite3 AND Jahr=$Jahr3_von_Seite1
UNION
...

Das kannst du dann in PHP mit einer Schleife zusammen bauen, ein String-Template nehmen, in welchem du dann die Werte ersetzt.

Und bitte kein TOFU!!!

Ciao, Frank