私は2つのテーブルを持っています。1 つはユーザーと呼ばれ、もう 1 つはテレビ番組と呼ばれます。users テーブルには、users_id、displayname、username、password があります。users_id という外部キーがあり、テレビ番組テーブルには、tv_id、users_id FK、tvshow、seasons があります。割り当てられた番号IDを表示するのではなく、誰が作成したかについて、ユーザーテーブルから表示名を表示できるようにしたいと考えています。
2 に答える
2
次の SQL クエリを使用して、ユーザーに関する情報を取得します。
SELECT users.username,
tv_shows.*
FROM tv_shows
LEFT JOIN users
ON users.users_id = tv_shows.user_id
次に、次の PHP スニペットを使用してユーザーに関する情報を表示します。
echo '<td>'.
'<a href="users.php?username='.
$row['username'].
'">'.
$row['username'].
'</a></td>';
于 2012-12-02T12:18:09.163 に答える
0
tv_shows テーブルには「username」という名前の列がないため、明らかに機能しません。そのため、SQL ステートメントで使用するすべてのフィールドをフェッチする必要があります。
SELECT tv_shows.*, users.username
FROM tv_shows
JOIN users ON users.user_id = tv_shows.user_id
テーブル構造によっては、代わりに使用したい場合がありますLEFT JOIN
...
次に$row['username']
、PHPコードで使用できます。これは、以前にSQLでフェッチしたためです。
また、結合やグループ化などについて学ぶには、いくつかの SQL チュートリアルを復習する必要があると思います。W3C のSQL チュートリアルは、開始するのに適したポイントです。
于 2012-12-02T12:23:55.983 に答える