在MySQL中进行三表联接
这是我的桌子在MySQL中进行三表联接,mysql,Mysql,这是我的桌子 program_join ('program_join_id, member_ID, program_schedule_id'); program_schedule (program_scedule_id, program_id, datetime'); program ('program_id, program_name); 这是我的mysql $mySql = "SELECT program_join.program_join_id,
program_join ('program_join_id, member_ID, program_schedule_id');
program_schedule (program_scedule_id, program_id, datetime');
program ('program_id, program_name);
这是我的mysql
$mySql = "SELECT
program_join.program_join_id,
member.member_username,
program_join.program_schedule_id
FROM program_join
INNER JOIN member ON
program_join.member_ID=member.member_ID
ORDER BY program_join_id";
$myQry = mysql_query($mySql, $DB) or die ("wrong query : ".mysql_error());
$number = $hal;
while ($myData = mysql_fetch_row($myQry)) {
$number++;
$code = $myData[0];
?>
<tr align="center">
<td><?php echo $number;?></td>
<td><?php echo $myData[1];?></td>
<td><?php echo $myData[2];?></td>
在“program schedule”下,我想显示我从“program\u join.program\u schedule\u id”中获得的程序名
请帮助我假设还有一个名为
program\u schedule
的表,我会再添加一个join并获得所需的列,下面是示例查询(使用假定的表/列名):
只需使用连接即可从程序表中获取程序名称:
SELECT
pj.program_join_id,
m.member_username,
p.program_name,
ps.datetime
FROM program_join pj
INNER JOIN member m ON pj.member_ID=m.member_ID
INNER JOIN program_schedule ps ON ps.program_schedule_id = pj.program_schedule_id
INNER JOIN program p ON p.program_id = ps.program_id
ORDER BY ... blah blah
那有什么问题?您已经知道如何执行
联接,因为您的查询中已经有一个联接。我想在程序计划下显示程序名,而不是在包含该信息的表中显示IDso联接。。。使用您已经使用过的完全相同类型的连接。由于限制$hal,$line
@lalala,请不要破坏您的帖子或其他人的帖子。如果你试图撤销一篇已修复的帖子,将会通知版主。版主会收回你的破坏行为,并给你一个暂停,这将阻止你进一步编辑。破坏公物的企图最终是徒劳的。但是我的计划表中没有程序名。你能帮我查一下吗。这是正确的格式吗?@lalala-我不知道你在问什么。这似乎与MySQL无关。//如果复制文件(trim($文件['Filename']['name'])==“”){文件名=$\POST['txtFilename'];}或者{//如果旧的图像文件存在,如果(文件存在(“images1/classes/”$\u POST['txtFilename']){取消链接(“images1/classes/”$\u POST['txtFilename']),将被删除//新图像文件(已添加)$file\u name=$\u FILES['Filename']['name'];$file\u name=stripslashes($file\u name);$file\u name=str\u replace(“'”,“”,$file\u name);$file\u name=$code.”“$file\u name;复制($\u FILES['Filename']['tmp\u name'],“images1/classes/$file\u name.jpg”)}用于更新图像,但它不起作用,你能帮我吗?@lalala-你最好的办法是提出一个新问题,这样你就可以给出一个答案。
SELECT
program_join.program_join_id,
member.member_username,
program_join.program_schedule_id,
program_schedule.program_name
FROM program_join
INNER JOIN member ON
program_join.member_ID=member.member_ID
JOIN program_schedule on program_schedule.id = program_join.program_schedule_id,
ORDER BY program_join_id ASC LIMIT $hal, $line";
SELECT
pj.program_join_id,
m.member_username,
p.program_name,
ps.datetime
FROM program_join pj
INNER JOIN member m ON pj.member_ID=m.member_ID
INNER JOIN program_schedule ps ON ps.program_schedule_id = pj.program_schedule_id
INNER JOIN program p ON p.program_id = ps.program_id
ORDER BY ... blah blah