我正在尝试使用自然连接来连接 mySQL 中的两个表,这两个表有一个相同的字段,但表之间的命名不同(我必须使用自然连接——我知道使用不同的会更容易加入)。自然连接查找具有相同名称的字段,因此我想将一个表中的列重命名为与另一个表中的列相同的名称。在我的教科书(不特定于 mySQL)中,它说以下内容应该有效:
SELECT Fname, Lname, Address
FROM (EMPLOYEE NATURAL JOIN
(DEPARTMENT AS DEPT (Dname, Dno, Mssn, Msdate)))
WHERE Dname=‘Research’;
我感兴趣的部分是“DEPARTMENT AS DEPT (Dname, Dno, Mssn, Msdate)”...但是我不能在 mySQL 中复制它(它会导致一个错误,说要检查在 '(Dname, Dno, Mssn, Msdate)' 附近使用正确的语法。是否有某种方法(简单地——没有嵌套的 SELECT/FROM 查询)在 mySQL 中像这样重命名单个列,以便自然连接将列视为等价?
最佳答案
这是在 MySQL 中创建 ALIAS
的方式:
FIELD
(或列)和TABLE
SELECT FName `FirstName`, LName `LastName
FROM `TableName` `NewName`
结果:
FirstName || LastName
++++++++++++++++++++++++
records here...
关于mysql - 如何在mySQL中同时 'alias'表和所有列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9028965/