Einzelnen Beitrag anzeigen
  #1  
Alt 03.03.2006, 01:22:35
KickMuck KickMuck ist offline
Anfänger
 
Registriert seit: Mar 2006
Beiträge: 1
Probleme mit PHP und mySQL, Select xy as yz funktioniert nicht

Hallo,

ich habe ein seltsames Problem bei der verwendung eines UNION SELECTS unter PHP auf eine MySQL-DB.
Ich verwende PHP 5.1.1 und MySQL 5.0.18.

Ich möchte gerne Werte von zwei Tabellen selektieren, In der einen Tabelle stehen Nummern ohne Bezug zu einem Namen, in Tabelle 2 gibt es ebenfalls eine Spalte die Nummern enthält und eine weitere Spalte mit dazugehörigen Namen.
Eigentlich wollte ich jetzt alle Nummern ausgeben, und falls ein Name in Tabelle 2 dazu existiert (Nummer in Tabelle 1 = Nummer in Tabelle 2), den in der zweiten Spalte angeben, sonst drei Fragezeichen.
Mein Select-Statement, das ich in phpMyAdmin absetze sieht so aus:

SELECT DISTINCT nummer,name
FROM tabelle_1 JOIN tabelle_2
WHERE nummer=nr OR nummer=nrfest
UNION
SELECT DISTINCT nummer, "???" AS name
FROM tabelle_1 JOIN tabelle_2
WHERE nummer NOT IN
(SELECT DISTINCT nr FROM tabelle_1);


Als Ergebnis erhalte ich (in phpMyAdmin) z.B. folgendes:

nummer | name
---------------------
1234 | Eins
1235 | Zwei
1236 | ???

usw.

Wende ich dieses Select allerdings per PHP an, so kommt kein gültiges ResultSet zurück und PHP kann es nicht mit fetch_assoc verarbeiten.
Das Problem scheint in dem 'SELECT ... AS ...' zu liegen. Ich habe auch schon andere Werte als die drei Fragezeichen verwendet, macht aber keinen Unterschied.

Wo liegt hier der Haken? Ist das ein bekanntes Problem von PHP?

Gruß, Robert
Mit Zitat antworten