mysql - 别名是否需要在 mysql union 中具有唯一名称

标签 mysql sql

我已经完成了以下操作,并且似乎没有遇到任何问题。在与 UNION 结合的不同查询中使用相同的别名是否不合适?

SELECT table1.a,t.b,t.c
FROM table1
INNER JOIN table2 AS t ON t.table1_id=table1.id
WHERE t.fk=123
SELECT table2.a,t.b,t.c
UNION
FROM table3
INNER JOIN table4 AS t ON t.table3_id=table3.id
WHERE t.fk=123;

最佳答案

union 的独立部分被视为独立的子查询。您可以对两者中的表使用相同的别名,因此您编写的查询没有问题。列的名称来自 union 中的第一个子查询,而不管后续子查询中的名称如何。

MySQL 和其他数据库也是如此。

关于mysql - 别名是否需要在 mysql union 中具有唯一名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25577426/

相关文章:

php - 在 Php/Mysql 中处理时间

php - 从存储中获取最后一条记录 MYSQL 性能

mysql - 即使条件为真,我的sql Select IF也会返回else结果

php - 将订单购物车 session 保存到数据库

mysql - 对多个表的复杂 SQL 查询

简单的两个表连接查询的 MySQL 性能问题

Mysql 随机唯一编号不起作用

sql - 无法通过脚本将用户添加到 db_datareader

c# - 列值是另一列的最大值,其中另一个值相同

javascript - 从选择框中获取所有选项 NOT MULTIPLE 并将它们传递给 php 以插入 mysql