我有一个查询从大约五个表中选择全部并将它们连接在一起。 问题是每个表都有两个在所有表中相同的列名。我想选择所有的数据,但我希望将这两列与其给予的名称联系起来。从表中选择全部将一列设置为别名使用AS
我的查询看起来像这样目前:
select updatedInfo.*,
nameInfo.*,
addressInfo.*,
phoneInfo.*,
emailInfo.*,
positionInfo.*
from updatedInfo join nameInfo on updatedInfo.IndivId=nameInfo.nameInfoId
join addressInfo on updatedInfo.IndivId=addressInfo.addressInfoId
join emailInfo on updatedInfo.IndivId=emailInfo.emailInfoId
join phoneInfo on updatedInfo.IndivId=phoneInfo.phoneInfoId
join positionInfo on updatedInfo.IndivId=positionInfo.IndivId
where updatedInfo.correctedInFNV is not null
order by updatedInfo.IndivId
列名updated
和alreadyCorrect
。 更新注意到这些信息已经以某种方式更新了,并且已经更正表示发送更新时信息是正确的。
我可以这样做吗?
select updatedInfo.*,
nameInfo.*, nameInfo.updated as nameUpdated .....
会这样吗?或者我必须列出桌子上的每一列?这是否会将未更名的列和作为别名?
你真的应该无论如何,不要使用select *。你真的使用每个表中的每一列吗? –
我确实使用每个表中的每一列。这是一个非常精简的模式。表格最多只有十列。 –
所以要明确并命名列。这就是你应该如何编写所有查询的方式。如果你有10列,这意味着你的查询是60列。如果您更改模式,则返回的数据超出您的需要。 –