我正在建立一个简单的地址簿网站,您可以在其中输入有关一个人的信息,然后输入有关地址的信息。然后,您可以使用下拉菜单选择人们居住的地方,以更新人员中的建筑物id属性,以匹配建筑物中自动生成的id。我不知道如何打印所有人的所有信息(这我可以做),然后打印与每个人的建筑id相匹配的建筑信息(这我不知道该怎么做。现在我使用一个while循环来打印每个人。但是我无法打印出匹配的建筑。
编辑:同时,感谢我从这个网站获得的所有信息在我学习webprogramming
您可以在SQL中使用joins
在一个查询中组合多个表。你也可以使用GROUP BY
只要搜索一下,我想你会得到一个很好的语言教程。
这里有一些很好的链接:
SQL JOIN, SQL GROUP BY可以使用一些代码和表名来帮助更好地定义这个例子,但无论如何,您需要更改您的mysql查询。在数据库中,persons
表和buildings
表之间至少需要1个匹配行。这样,您可以使用公共行将它们一起JOIN
。
id
作为通用行的占位符。像这样的代码应该可以工作:
SELECT * FROM persons LEFT JOIN buildings ON(persons.id=buildings.id) WHERE persons.building_id = buildings.building_id
要获得persons
和buildings
的所有结果,您将需要单独的查询。但是,上面的查询应该为您提供人员信息的结果,其中building_id
与buildings
中的building_id
相匹配。