从多个表中选择行

时间:2012-06-19 10:17:56

标签: mysql

我正在尝试从多个表中获取数据(所有表都相同)

Select column1,column2 From table1,table2

在MYSQL中获取此功能是否正确? (我在查询中动态传递表名称)

3 个答案:

答案 0 :(得分:1)

您需要的语法是:

SELECT a.column1, b.column2
FROM table1 AS a, table2 AS b

AS为您的表格提供可在您的请求中直接使用的别名。

答案 1 :(得分:0)

像:

SELECT table1.column1, table2.column2 
FROM table1, table2

通过使用表对列进行完全限定,当列中的列具有相同的名称时,您不会遇到冲突。正如samsamX在他的回答中指出的那样,另一种方法是对表进行别名,这可以使查询更简单,使用长表名/模式名称。

答案 2 :(得分:0)

也许这个:

 SELECT column1, column2
 FROM table1
 UNION ALL
 SELECT column1, column2
 FROM table2

但是你不能动态传递表名。它们必须事先为数据库所知(因此您需要首先在程序中构造SQL)。