gpt4 book ai didi

MySQL 显示表名和列

转载 作者:可可西里 更新时间:2023-11-01 06:30:55 27 4
gpt4 key购买 nike

我目前正在调试一个巨大的 MySql 调用,它连接了大量的表,这些表共享列名,如 id、created_at 等。我开始把它拆开,但我想知道是否有办法做类似的事情:

SELECT * AS table.column_name FROM table1 LEFT JOIN etc etc etc...

不必像这样单独命名列:

SELECT table1.`column2' AS 'NAME', table1.`column3` AS ...

如果有办法的话,肯定会有助于加快调试过程。

谢谢。

编辑:

感谢您到目前为止的回答。它们不是我要找的东西,我认为我的问题有点含糊,所以我举个例子:

假设您在 MySql 架构中有此设置:

表:学生字段:INT id | INT school_id | VARCHAR 名称

表:学校字段:INT id | INT 名字

学生包含:

1 | 1 | "John Doe"

学校包含:

1 | "Imaginary School One"

执行 MySql 调用“SELECT * FROM students LEFT JOIN schools ON (students.school_id = schools.id)”将产生:

id | school_id | name       | id | name

1 | 1 | "John Doe" | 1 | "Imaginary School One"

我们知道得更多,我们知道第一个 Id 和 Name 列指的是学生表,第二个 Id 和 Name 指的是学校表,因为数据集非常小且命名明确。但是,如果我们必须处理包含多个左连接和具有相似名称的列的结果集,那么它会开始变得难以阅读,通常您必须通过连接来跟踪它。我们可以开始做类似的事情

SELECT school.name AS 'school_name', etc etc etc...

但是,一旦您开始处理大型数据集,这就会变得非常不切实际。

我想知道是否有一种方法可以返回结果集,其中列名看起来像这样:

students.id | students.school_id | students.name | schools.id | schools.name

如果我需要再次做类似的事情,这对以后的引用很有用。

最佳答案

如果您按顺序选择表格,并添加一个带有名称的间隔列,会怎样。

select 'table1', t1.*, 'table2', t2.*, 'table3', t3.* 
...

至少这样您就不必为特定的列命名。

关于MySQL 显示表名和列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3885237/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com