mysql - 如何在mySQL中同时 'alias'表和所有列?

标签 mysql sql rename

我正在尝试使用自然连接来连接 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/

相关文章:

php - 无法从 mySQL 查询中获取结果以在 PHP 中显示

MySQL:当 "ON DELETE"时如何仅将一个参数设置为 null

android - 使用整数子句查询数据库?

sql - 返回带有 union all 的查询结果,其顺序与我的 `IN(…)` 语句中的值相同

ruby-on-rails - rails : rename globalize column

linux - 重命名包含数字 cygwin 的文件

mysql 数据库转储。我想将生产数据复制到我的开发服务器。当生产站点启动时,这样做安全吗?

mysql - Laravel 4 和 Eloquent, hasMany 关系似乎不起作用

sql - HTML5 Web 数据库安全

python pandas 以相同的方式重命名多个列标题