带join和别名但不带表名的MySQL查询

带join和别名但不带表名的MySQL查询,mysql,select,alias,Mysql,Select,Alias,我遇到了一个有趣的问题: 我有两个表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进行了尝试 知道如何避免标题中的表名吗?

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

我有两个表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进行了尝试


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

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

SELECT ID, NAME
FROM (SELECT t1.foo AS ID, t2.bar as NAME
FROM t1, t2
WHERE t1.foo = t2.foo) AS t;
SELECT (t1.foo+0) AS ID, CONCAT(t2.bar) as NAME
FROM t1, t2
WHERE t1.foo = t2.foo;

嗨,这是我自己发现的,但谢谢你的回答。