[英]how to mysqli inner join with 3 tables
最后,我需要结果包含所有3个表的所有数据。 如何将3个表联接在一起,以便最后全部显示。 这是我到目前为止的内容:
if ($results = $db->query("SELECT * FROM HWData
LEFT JOIN ClassData
ON HWData.class = ClassData.class
LEFT JOIN Judges
ON Judges.groupnum = ClassData.groupnum
ORDER BY HWData.entrynum",
MYSQLI_USE_RESULT)) {
$result_set = mysqli_fetch_all($results, MYSQLI_ASSOC);
echo json_encode($result_set);
结果不符合预期。 console.log[i]['groupnum'];
很奇怪 显示正确的组编号,但是$("#output").append("<p>"+data[i]['groupnum']);
仅显示1
3张表如下:
类数据
groupnum abbr
0 DQB
0 DQC
1 SUM
1 PP
1 FOS
1 VANF
1 VANS
2 AFCF
2 AFCS
2 ICCS
2 CCS
3 LSUF
3 LTMS
4 HL
4 MC
评委
judge group
Coleen 4
Daniel 3
Aaron 2
Jeff 1
硬件数据
entrynum fname class
1 Esteban FOS
2 Dalia PP
3 Sheri
4 Sheri HL
5 Sheri MC
10 Danita ICCS
11 Chris AFCS
好的,所以我知道您可以使用多个联接。
if ($results = $db->query("SELECT * FROM HWData
LEFT JOIN ClassData
ON HWData.Abbr = ClassData.Abbr
LEFT JOIN Judges
ON Judges.groupnum = ClassData.groupnum",
MYSQLI_USE_RESULT)) {
$result_set = mysqli_fetch_all($results, MYSQLI_ASSOC);
echo json_encode($result_set);
$results->close();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.