0

我遇到了一个有趣的问题:

我有两个表 t1 和 t2 有几列。因为两个表中的两列具有相同的名称,所以我需要这样做:

SELECT t1.foo AS ID, t2.bar as NAME
FROM t1, t2
WHERE t1.foo = t2.foo;

答案以 t1.ID, t2.NAME 开头

我不会在标题中使用表名。

有趣的事情:在视图中使用相同的查询返回正确/想要的标题:ID...NAME

我想在观察到相同行为的存储过程中使用这些查询。

尝试使用 MySQL 5.5.9

知道如何避免标题中的表名吗?

4

2 回答 2

0
SELECT ID, NAME
FROM (SELECT t1.foo AS ID, t2.bar as NAME
FROM t1, t2
WHERE t1.foo = t2.foo) AS t;
于 2012-07-25T07:18:06.343 回答
0

您可以使用简单的字符串或 int 函数从字段中删除链接的表名:

SELECT (t1.foo+0) AS ID, CONCAT(t2.bar) as NAME
FROM t1, t2
WHERE t1.foo = t2.foo;
于 2019-08-29T12:48:04.853 回答