Abfrageproblem

Big Iron

Grünschnabel
Hallo,

ich hänge seit Stunden an einem Abfrage Problem.
Datenbank SQL 5.0.51, PHP 5.2.9

Ich habe folgende Tabelle:

| ID1 | ID2 |
|--------|---------|
| 1 | NULL |
| 1 | 2 |
| 1 | 295 |
| 2 | NULL |
| 2 | 296 |
| 3 | NULL |
| 3 | 3 |


und benötige folgendes Ergebnis:
| ID |
|--------|
| 1 |
| 2 |
| 295 |
| 296 |
| 3 |

Wer kann mir auf die Sprünge helfen?
Vielen Dank im Voraus
 
Wenn du es nur in PHP brauchst, dann kannst du es dort so lösen:
PHP:
<?php
$sql = 'SELECT `id1`, `id2` FROM `Tabelle`';
// ... (Abfrage)
$result; // Array in dem die gesamten Daten aus deiner Abfrage enthalten sind

foreach($result as $line) {
  $data[] = isset($line['id2']) ? $line['id2'] : $line['id1'];
}

$data; // Hier ist dann deine neue Liste, so wie du sie wolltest, drin (als Array)
?>
 
Zuletzt bearbeitet:
Hallo "einfach nur crack"

evtl. war mein erster Post nicht ganz klar geschrieben.

Ich benötige jeden Wert einmal, egal in welcher der 2 Spalten er steht.
Habs mit DISTINCT und GROUP BY schon versucht, komm da aber auch nicht weiter.

Dein Code liefert leider auch nicht das gewünschte Ergebnis.

Gruß Stefan
 
Ich hätte da auch noch eine Möglichkeit, da die von deepthroat dir auch doppelte Werte liefert:
Code:
SELECT IF(`id2` IS NULL, `id1`, `id2`) AS `id` FROM `Tabelle` GROUP BY `id`
 
Hallo Jungs,

Ihr zwei seit der Hammer!
Vielen Dank für die Lösungen (die beide dasselbe Ergebnis bringen)

Werd mich jetzt noch mal hinsetzen und meine PHP/SQL Kenntnisse etwas vertiefen!

Gruß Stefan
 

Neue Beiträge

Zurück