【发布时间】:2010-10-24 21:59:41
【问题描述】:
我有这两张表:
表作者:
ID (INTEGER),
author_name (VARCHAR),
first_name (VARCHAR),
last_name (VARCHAR),
preferred_name (VARCHAR)
表共同创作:
ID (INTEGER)
author1ID (INTEGER),
author2ID (INTEGER),
paper_ID (INTEGER) // (ID of the co-authored paper referenced by this link)
如您所见,两个表都有一个“ID”列,但它们不相关。
但是,当我使用这个查询时:
select author_name, count(*) as NumPapers from
(select * from Author as a join CoAuthored as c on a.ID = c.author1ID
union distinct
select * from Author as b join CoAuthored as d on b.ID = d.author2ID) as t1
group by author_name
order by NumPapers;
mySQL 给我一个错误提示:ERROR 1060 (42S21): Duplicate column name 'ID'
为什么会发生这种情况,我该如何避免?
【问题讨论】: