Frage

Ich verwende die folgende SQL-Abfrage:

Select * from table1 as t1, table2 as t2 where t1.id = t2.col

aber mein Problem ist, dass beide Tabellen Felder mit demselben Namen haben, place.Wie kann ich also die Spalte mit dem Namen auswählen? place aus table2 in meinem PHP-Code?Ich möchte den folgenden PHP-Code verwenden

 while($row_records = mysql_fetch_array($result_records))
    {

            <?  echo $row_records['place']; ?>

     }

Wie kann ich das Feld aus einer bestimmten Tabelle abrufen?

War es hilfreich?

Lösung

Verwenden Sie nie ...

Select * from ...

... in einer Produktionsumgebung - immer explizit angeben, welche Spalten Sie zurückgeben möchten

.

So können Sie ändern Ihre SQL an:

Select t1.Place as T1Place, t2.Place as T2Place
  from table1 as t1, table2 as t2 where t1.id = t2.col

Also in Ihrem PHP würden Sie haben:

 while($row_records = mysql_fetch_array($result_records))
 {

        <?  echo $row_records['T2Place']; ?>

 }

Andere Tipps

Warum verwenden Sie nicht den Tabellenalias und den Feldnamen?Zum Beispiel,

    Select t1.place as t1_place, t2.place as t2_place 
      from table1 as t1, table2 as t2 where t1.id = t2.col

In Ihrem PHP-Code können Sie es mit auswählen

while($row_records = mysql_fetch_array($result_records))
    {
    echo $row_records['t1_place']; 
    echo '<br />';
    echo $row_records['t2_place']; 
    }
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top