在我的架构中,有两个表具有相同的列名(不可以更改它们)

执行查询
select * from tabA join tabB导致“重复列名col”的mysql错误

唯一的解决方案是选择使用别名,但是我不想为每一列都键入alias.col(因为我需要两个表中的所有列)

是否可以按照以下方式做一些事情:

select tabA.(colA, colB, colC...), tabB.(colA, colB, colC...)

最佳答案

没有它不可能。

你必须那样做

  select tabA.colA, tabA.colB, tabA.colC..., tabB.colA,  tabB.colB,  tabB.colC...


如果两个表中都有相同的name列,则给它另一个别名。

假设您在两个表中都有ID列名称。

 select tabA.id , tabB.id as id_B


会给你结果

  id   id_B


留儿的fiddle

关于mysql - 从一个别名中选择多个列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24333212/

10-09 19:23