我有一个名为“Problems”的MySQL数据库:
year type model
---- ---- -----
2016 Cars A
2016 Cars B
2015 Cars A
2014 Cars C
2015 Vans D
2014 Vans E
对于不同的“车型”,它列出了有问题的“车型”以及这些车型出现问题的年份。
我需要为每种类型的车辆创建一个单独的HTML表。在每个表中,我需要为每个模型创建一行,为每个年份创建一列。我将在单元格中使用“Y”来指定问题,使用句点(“.”)来指定没有问题。
也就是说,我需要创建以下两个HTML表:
汽车HTML表:
2016 2015 2014
A Y Y .
B Y . .
C . . Y
Vans的HTML表:
2016 2015 2014
D . Y .
E . . Y
我将在PHP中使用mysqli来查询数据库和构造表。我想我可以对每个表分别进行查询,但这似乎不是最经济的方法。是否可以执行一个将返回有序行的查询,以便我基本上可以执行这样的迭代模式?
for type in types:
// write start of <TABLE>
for model in models:
// write start of <TR>
for year in years:
// write <TD>
// write close of <TR>
//write close of <TABLE>
如果执行许多不同的查询更有意义,请给出建议。
最佳答案
您可以运行如下查询:
SELECT * FROM Problems ORDER BY VehicleType, VehicleModel, VehicleYear;
之后,使用上面显示的逻辑循环遍历结果。查询本身不会将行放在您想要的位置,但是您的查询结果将以一种允许您循环结果的方式进行排序,因此您所布置的逻辑应该可以正常工作。
关于php - MySQL JOIN为PHP中的多个HTML表安排结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37871278/