MySQL显示来自多个表的列

MySQL显示来自多个表的列,mysql,sql,database,Mysql,Sql,Database,我有两张桌子:图书和出版商 图书栏目包括:图书编码、书名、出版商编码 发布者列包括:发布者代码、发布者名称 我试图显示每本书的书名,包括书号、出版商编号和出版商名称 到目前为止,这就是我所拥有的: select book_code, title, a.publisher_code from book a inner join publisher p on a.publisher_code = p.publisher_code; 我不确定如何在mysql中也显示发布者的名称,我会这样写: SEL

我有两张桌子:图书和出版商

图书栏目包括:图书编码、书名、出版商编码

发布者列包括:发布者代码、发布者名称

我试图显示每本书的书名,包括书号、出版商编号和出版商名称

到目前为止,这就是我所拥有的:

select book_code, title, a.publisher_code
from book a
inner join publisher p
on a.publisher_code = p.publisher_code;

我不确定如何在mysql中也显示发布者的名称,我会这样写:

SELECT
  b.book_code,
  b.title,
  b.publisher_code,
  p.publisher_name
FROM
  book AS b
    JOIN publisher AS p USING (publisher_code);

选择一个.book\u代码、一个.Title、一个.Publisher\u代码、一个P.Publisher\u名称您只需将其添加到选择中,还应引用包含出版商名称的表名别名。只需将每个列添加到您希望在结果中看到的select语句中!当两个或多个表有一个名为相同的列时,必须像使用publisher_代码一样定义要从中获取数据的表。当涉及多个表时,我会养成总是给表加别名的习惯,这样可以避免以后出现歧义。谢谢,我不知道您可以在开始的select语句中从多个表中进行选择。您也可以尝试从中选择*from。。。或从…中选择b.*,p.*。。。在phpmyadmin中并查看所有的冒号,当您只需要一个元素时,不建议这样做,但当您确实需要所有元素时,建议这样做。publisher\u代码可能会出现问题,因为它存在于多个表中,然后选择*,b.publisher\u代码作为publisher\u代码。。。我可以成为你的朋友