Probleme bei Abfrage

Hallo,
ich würde gerne eine Abrage starten nur habe ich ein Problem.
Ich möchte nur Daten Ausgeben wenn bei einem bestimmten Wert in der Spalte how der Wert ‚Give‘ zuerst vorkommt.
Wenn aber zuerst ‚Take‘ vorkommt soll der Wert bei der Ausgabe ignoriert werden.
Hat jemand eine Idee wie man so etwas realisieren könnte?

vnum how
1 Give
1 Take
1 Give
2 Take
2 Give

1 ausgeben 2 nicht

Einfach zu lösen durch eine Bedingung:

[php]
//vorher auslesen der Daten und Speicherung der Abfrage in $result
//vermutlich Ausgabe durch while-Schleife?
while($row = mysql_fetch_array($result)) {
if($row[‚how‘] == ‚Give‘) {
//Ausgabe …
}
}
[/php]

Oder meinst du was anderes?

Oder in der SQL WHERE `how` LIKE 'Give%'

Nein, das meine ich leider nicht.
Damit wird nur ausgeben welcher Wert in der Spalte Give bestizt und dies besitzt jeder.
Ich erweiter mal das beispiel:
vnum how
1 Give
1 Take
1 Give
2 Take
2 Give
3 Take
3 Give
3 Take
4 Give
4 Take
5 Give
5 Take
5 Give
Die Ausgabe: 1 4 5

Du hättest gleich genauer schreiben sollen, dass bei der Änderung von vnum geprüft werden soll …
Mein Lösungsansatz:

[php]

$aktuelleVnum = 0;

while($row = mysql_fetch_array($result)) {
//prüfen ob sich vnum ändert
if($row[‚vnum‘] != $aktuelleVnum) {
//prüfen ob how == Give ist
if($row[‚how‘] == ‚Give‘) {
$zahlen = $row[‚vnum‘];
}

      //aktuelle vnum setzen
      $aktuelleVnum = $row['vnum'];
 }

}

echo implode(’ ', $zahlen);
[/php]

Ausgabe bei deinen Werten:
1 4 5

[PHP]$aktuelleVnum = 0;

$sql1 = „SELECT what FROM log WHERE who=‚17658‘“;
$ergebnis1 = mysql_query($sql1);
while($row = mysql_fetch_array($ergebnis1)) {
$accountid = $row[‚what‘];
if($row[‚what‘] != $aktuelleVnum) {
//prüfen ob how == EXCHANGE_GIVE ist
if($row[‚how‘] == ‚EXCHANGE_GIVE‘) {
$zahlen = $row[‚what‘];
}

      //aktuelle what setzen
      $aktuelleVnum = $row['what'];
 }

}

echo implode(’ ‚, $zahlen); [/PHP]Das ist nun was ich mithilfe deines scripts gemacht habe nur folgender Fehler erscheint:
Warning: implode() [function.implode]: Bad arguments on line 24
Line 24: echo implode(‘ ', $zahlen);
Habe ich etwas falsch gemacht?

Vermutlich wird kein Mal die Bedingung erfüllt und von daher auch das Array $zahlen nicht erzeugt. Kann dir nichts genaueres sagen, da ich nicht mehr weiß, als hier steht.
Kannst ja testweise die Werte sofort ausgeben in Zeile 16 (?) oder sonst ein bisschen rumprobieren. Ich habs nicht getestet, es war eine Lösungsidee.