2017-05-19 7 views
0

両チームの名前(lteamとvteam)を表示するにはどうしたらいいですか?おかげenter image description here http://prntscr.com/f9mkqh同じ名前のSQLクエリの列を表示

$sql = " 
SELECT * 
    FROM fixtures 
    LEFT 
    JOIN teams AS a 
    ON fixtures.lteam = a.id 
    LEFT 
    JOIN teams AS b 
    ON fixtures.vteam = b.id 
WHERE date_ko = '2017-05-19' 
"; 
echo '<table>'; 
echo '<tbody>'; 

foreach($pdo->query($sql) as $row) 
    { 
    echo '<tr>'; 
    echo '<td>' . $row['lteam'] . '</td>'; 
    echo '<td>' . $row['name'] . '</td>'; 
    echo '<td>-</td>'; 
    echo '<td>' . $row['vteam'] . '</td>'; 
    echo '<td>' . $row['b.name'] . '</td>'; 
    echo '</tr>'; 
    } 

echo '</tbody>'; 
echo '</table>'; 

:クエリが機能するようになりました...これは、SQL結果のスクリーンショットです!

答えて

1

SQL結果のヘッダーが多少混乱します。テーブルとスキーマの構造が完全にわからないため、name属性をteamsテーブルから取得することに問題があると仮定する必要があります2回。

明示的に列を選択し、これを機能させるために何か他の名前を付ける必要があります。例:

SELECT *, `a`.`name` as `team1name`, `b`.`name` as `team2name` FROM fixtures [...] 

これで、割り当てられた別名でチーム名を取得できるはずです。

+0

あなたは上司です!ありがとう! – vloryan