0

HeidiSQL 不覆盖结果集中应覆盖的字段是标准行为吗?

我运行 SQL 查询,其中两个表具有相同的字段,一个表是主表,另一个是来自联接。我必须从主表中选择所有字段(例如使用“*”),并且连接表中的某些字段必须覆盖主表的值。当我们使用 PDO 获取结果时,它实际上是有效的(因为结果我们得到了一个具有相同键的数组值覆盖了前一个值)。但在 HeidiSQL 我得到了这个:

在此处输入图像描述

4

1 回答 1

0

好的,我自己搞定的。根据文档:

MySQL 允许重复的列名。也就是说,可以有多个同名的 select_expr。这是对标准 SQL 的扩展。因为 MySQL 还允许 GROUP BY 和 HAVING 引用 select_expr 值,这可能会导致歧义:

SELECT 12 AS a, a FROM t GROUP BY a;

在该语句中,两列的名称为 a。为确保使用正确的列进行分组,请为每个 select_expr 使用不同的名称。

我以前没有重视过这个。

于 2015-12-18T10:06:25.630 回答