ein bestimmtes Feld aus einer Tabelle auswählen?
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?
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