Vinzenz Mai: PHP+MYQSL - JOIN - Felder mitgleichen Namen machen probleme

Beitrag lesen

Hallo

$query="SELECT * FROM an
JOIN model m ON an.model_id=m.id";

  

> in der Tabelle "an" und "model" gibt es jeweis die Felder mit dem Namen "id"  
  
  

> das macht mir bei der Ausgabe in PHP probleme  
> es scheint das die id werte von der 2 Tabelle geholt werden und die bei "an" überschreibt  
>   
> Wie kann ich das umgehen ?  
  
verzichte auf "SELECT \* ", verwende statt dessen explizite Spaltenlisten, die  
auch nur die Spalten enthalten, die Du benötigst. Bei Namensgleichheit  
vergibst Du einfach einen Aliasnamen für die Spalte:  
  
~~~sql
SELECT  
    an.id,  
    an.x,  
    m.y,  
    m.id AS mid,    -- mid ist ein Aliasname für die Spalte id aus Tabelle m  
    m.z  
FROM an  
INNER JOIN model m  -- so wie m ein Aliasname für die Tabelle model ist  
ON an.model_id = m_id
~~~.  
  
  
Freundliche Grüße  
  
Vinzenz