Mysql mit Array vergleichen...

lycoos
Hallo,

ich versuche grade ein paar Datensätze aus der DB ziehen.

Dies geht zwar auch, aber sehr umständlich.

Sprich mit einer FOR Schleife. Nun dachte ich das ich mir mal die MySQL Funktion IN() anschaue aber das geht irgendwie auch nicht. Hat einer ne Ahnung wie ich in ein Selectstatement ein Array einbauen kann?

Also

php:
1:
WHERE bla $array


Die Forschleife ist sehr langsam....


ich hoffe Iwer hat Ideen...

lycoos
ph.n
oO ich verstehe zwar nicht ganz was du willst, aber vielleicht könnte die Funktion implode() nützlich sein..

http://de3.php.net/manual/de/function.implode.php
[kamui]
Ich verstehe auch nicht genau was du meinst ...

Hast du z.B. IDs in dem Array und willst dann z.B. die EMail von jedem mit der ID haben? Dann könntest du es so probieren:
php:
1:
2:
3:
4:
5:
6:
$query ="SELECT email FROM tabelle WHERE ";
$count 0;
foreach ($array as $key=>$value) {
  $query .= (($count!=0)?('OR '):(''))."id = '".$value."';
  $count++;
}
xundy
IN() ist da schon richtig, nur darfst du dort keine Array angeben sondern musst das array zufor in einen kommagetrennten String umwandeln, sollte ja mit implode ken Problem sein

mfg
seb
ich glaub er möchte den inhalt
php:
1:
$array = array('bla''test');

mit einem tabellen satz etc vergleichen
xundy
Das hatte ich schon so verstanden, und ändert nichts an meiner Antwort, vielleicht schaust du dir die Funktion auch mal an Augenzwinkern

Mfg
lycoos
Jo danke xyz. Das wars. Das ist schwere auszudrücken was ich versucht habe auszudrücken. Augenzwinkern Auf jeden Fall das mit Foreach hatte ich schon dachten nur das es anders schneller gehen muss. Auf die Idee mit Implode bin ich garnet gekommen. Danke.