MySQL返回完整的table.column名称

时间:2016-06-30 04:37:58

标签: mysql

如果我有这样的疑问:

SELECT id, name, age FROM people;

我将获得名为id,name和age的列。是否有一个选项来指定"我想在结果中使用完整的table.column名称"? IE,理想情况下,我运行上述查询并获取列people.id,people.name和people.age。

如果它有所不同,则从PHP运行查询。

我不希望使用SELECT id AS people.id(etc),因为我有大约50个查询,每个查询包含大约10-12列。我希望避免手动重写所有这些查询。

重复'问题没有我的问题的答案(就我所知,它不是原始问题)除了"它不可能"。

4 个答案:

答案 0 :(得分:0)

您可以为此目的使用列别名。

SELECT id AS 'people.id', name AS 'people.name', age AS 'people.age' FROM people;

答案 1 :(得分:0)

您只需使用as

即可
SELECT id as `people.id`, name as `people.name`, age as `people.age` FROM people;

试试这个。

答案 2 :(得分:0)

试试这个...用column_name连接你的表名,并使用信息模式从表中获取所有列.......

SELECT group_concat('table1.',COLUMN_NAME) 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_SCHEMA = 'db_name' AND TABLE_NAME = 'table1';

稍后如果您愿意,可以将结果存储在变量中,并根据您的要求使用它们。

而是可以使用输入表名和db_name创建动态查询并遍历它们直到达到目标: - )

答案 3 :(得分:-1)

使用别名 基本上创建了别名以使列名更具可读性。 Sql Aliases

示例:

 SELECT id AS 'people.id', name AS 'people.name', age AS 'people.age' FROM people;