Mahlzeit Markus aus Bremen,
Mein problem ist, dass ich die Inhalet der beiden Arrays nicht kenne,
Wieso nicht?
weil die aus einer vorangegangenen Abfrage gefüllt werden, was ja ebenfalls kein Problem ist.
Sind es denn Arrays?
WHERE T1.Ort IN (Array1)
AND T2.Art IN (Array2)[/code]Es ist nicht bekannt, wie viele Einträge in den beiden Arrays stecken.
Wieso nicht? Wenn Du die Werte vorher abfragst, sind sie Dir doch bekannt. Du musst die einzelnen Array-Element nur noch in geeigneter Form als String miteinander verketten und in die Abfrage einsetzen.
Oder willst Du alles mit einer Abfrage erschlagen? Dann solltest Du es evtl. mit geeigneten Unterabfragen versuchen:
...
WHERE T1.Ort IN (SELECT foo FROM bar WHERE fasel = 'blubb')
AND T2.Ort IN (SELECT blubb FROM bla WHERE gross < 1)
Ob Dein DBMS das kann, kannst nur Du sagen. Alternativ nennst Du es uns endlich mal, dann kann man Dir auch gezielter helfen.
Kann ich die Arrays direkt in die Abfrage einsetzen oder muss ich zuerst die Werte auslesen und dann die Ergebnisse über eine Hilfsvariable in die Abfrage einsetzen?
Die Frage kannst Du Dir selbst beantworten: beantworte dazu folgende Hilfsfragen: Kann Dein DBMS mit PHP-Code bzw. PHP-Variablen umgehen? Wie wird SQL-Code in PHP üblicherweise notiert - und in was für einer Variable welchen Typs wird er gespeichert?
Und gewöhne Dir bitte zeitnah TOFU ab!
MfG,
EKKi
sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|