从我的连接表中获取数据
问题描述:
我有一个连接表,它从我的受访者表respondant_id
中获取ID,并从我的团队表table_id
获取ID。从我的连接表中获取数据
当我从该表中选择时,输出很好,所以我找回了与队ID一起结尾的响应者ID。
我想用respondant_data
的受访者姓名和teams
的团队名称通过使用连接表的输出值来显示受访者姓名。
我试过这里,但我一直得到0结果。
$sql = "
SELECT
respondant_data.respondant_id, teams.team_id
FROM
respondant_data
INNER JOIN
teams
ON
respondant_data.respondant_id = teams.team_id
WHERE
respondant_teams.team_id= 5";
$result = $conn->query($sql);
$i = 1;
if($result->num_rows > 0){
while($row = $result->fetch_assoc()){
echo $i++ . ' ';
echo 'user_id: ' . $row["respondant_id"] . ', ';
echo 'team_id: ' . $row["team_id"];
echo '<br>';
}
} else{
echo 'no results';
}
所以我想我的输出要像“约翰·史密斯”,“中央队”
答
尝试此查询。
SELECT
resp_data.respondant_id, teams.team_id
FROM
respondant_data resp_data,
teams,
respondant_teams resp_teams
WHERE
resp_data.respondant_id = teams.team_id
and resp_teams.team_id = teams.team_id
and resp_teams.team_id = 5
在一个地方你已经使用过团队(第7,9行),并在一个地方使用过respondant_teams(第11行)。使用适当的表名。 –
可能你正在加入WRONG键上的表....如果respondant_data有一个外键,比如team_id,那么JOIN可以是:respondant_data.team_id = teams.team_id ....其中respondant_data表的team_id是一个外键指向队表... – barudo
Iv让自己都感到困惑:(所以是的,我只是想加入我的中间表,其中有respondant_id和team_id并输出了兄弟的名字和队名也属于... – PhpDude