MySQL - ID 显示不正确

MySQL - ID not displaying correctly

我有一本table author,shelf,book这本书有author_idshelf_id的外键。 作者的数据是1=Jose2=William Shakespeare。 在货架上是 1=History2=Science。 我添加的是ID分别是1,1。但是当我使用 inner join 时。它显示为 ScienceWilliam Shakespeare。但是当我 select * from book 它显示为 1 和 1。

这是我的查询

select b.book_title, a.author_firstname, ' ' ,a.author_lastname,b.book_description,s.shelf_description,b.book_quantity 
from book b
inner join author a 
on b.book_id= a.author_id
inner join shelf s 
on b.book_id=s.shelf_id

这是我的正确查询

select 
    b.book_title, a.author_firstname, ' ' ,a.author_lastname) Author ,b.book_description,s.shelf_description,b.book_quantity
     from book b 
     inner join author a 
     on b.author_id= a.author_id
     inner join shelf s
     on b.shelf_id=s.shelf_id

它未对齐的原因是因为 book_id 的值等于 author_id,这将覆盖显示。