打印值从两个表与php MSQL


Printing values from two tables with php MSQL

我在phpmyadmin的数据库上设置了两个表,并通过php文件向它们添加了内容。这些表看起来像这样:

名称:电影。
Columns: ID, title, directorID(通过表单添加到表中时获取与导演相同的ID)

名称:导演。
Columns: ID(number), name.

我现在要做的是打印(通过使用SELECT和查询/数组)所有导演的列表,与他们"执导"的电影。这样的:

"导演:电影,电影。"

"下一个导演:电影。"

以此类推,直到所有的导演和他们的电影都被印刷出来。我已经设法以各种顺序显示列表,只使用一个表,但我似乎无法掌握如何做到这一点,从两个值。任何帮助都将非常感激。对不起,如果我不清楚,我已经睡了几个小时试图解决这个问题。

您需要使用group_concat进行查询,根据导演对所有电影名称进行分组,然后使用PHP显示它们

select 
d.ID,
d.name,
group_concat(m.title) as title
from director d
join movies m on m.directorID = d.ID
group by d.ID

try this sql

SELECT B.name AS director_name, A.title as movie_name
FROM movies A, director B
WHERE A.directorID=B.ID

尝试像这样使用JOIN

SELECT * FROM movies LEFT JOIN director ON movies.directorID = director.id,这将为您提供两个表中所有列的列表然后您可以通过执行以下操作显示您喜欢的tablename.column_name