mysql联合结果中的错误列

2023-12-21

使用 union 时我得到了错误的列名称。

这就是我所做的,我有两个非常大的表,具有相同的结构和不同的记录,所以就是这样。

mysql> select * from e18 where `15` like '%car%' limit 1;
+------+------+----+------+------+------+------+------+------+------+------+------+------+------+------+-------------+------+------+------+------+------+------+--------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+-----------+
| id   | 1    | 2  | 3    | 4    | 5    | 6    | 7    | 8    | 9    | 10   | 11   | 12   | 13   | 14   | 15          | 16   | 17   | 18   | 19   | 20   | 21   | 22     | 23   | 24   | 25   | 26   | 27   | 28   | 29   | 30   | 31   | 32   | 33   | 34   | 35   | 36   | 37   | 38        |
+------+------+----+------+------+------+------+------+------+------+------+------+------+------+------+-------------+------+------+------+------+------+------+--------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+-----------+
| 2730 | 2730 | 18 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | cars: stuff | NULL | NULL | NULL | NULL | NULL | NULL |  5  1  | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | yy        |
+------+------+----+------+------+------+------+------+------+------+------+------+------+------+------+-------------+------+------+------+------+------+------+------+--------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+-----------+
1 row in set

mysql> (select * from e8 where `15` like '%car%') union
(select * from e10 where `15` like '%car%') union
(select * from e18 where `15` like '%car%') limit 1;");
+------+------+----+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------+------+------+------+------+------+------+------+--------+------+------+------+------+------+------+------+------+------+------+------+------+------+-----------+
| id   | 1    | 2  | 3    | 4    | 5    | 6    | 7    | 8    | 9    | 10   | 11   | 12   | 13   | 14   | 16   | 17          | 18   | 19   | 20   | 21   | 22   | 23   | 24   | 25     | 26   | 27   | 28   | 29   | 30   | 31   | 32   | 33   | 34   | 35   | 36   | 37   | 38   | 15        |
+------+------+----+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------+------+------+------+------+------+------+------+--------+------+------+------+------+------+------+------+------+------+------+------+------+------+-----------+
| 2730 | 2730 | 18 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | cars: stuff | NULL | NULL | NULL | NULL | NULL | NULL | NULL |  5  1  | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL | yy        |
+------+------+----+------+------+------+------+------+------+------+------+------+------+------+------+------+-------------+------+------+------+------+------+------+------+--------+------+------+------+------+------+------+------+------+------+------+------+------+------+-----------+
1 row in set

在这种情况下,Union all 和 union 返回相同的结果。

只有一行包含单词“car”,位于表 e18 中。

由于某种原因,我从使用中得到的结果中的列名被搞乱了,看起来我错过了一些东西,你知道它是什么吗?

提前致谢。


联盟作品按栏目position不是名字。但是您还没有指定列位置,因为您已经指定了*所以它是按数据库选择的顺序排列的,而不是由您选择的。

最终结果集的名称是联合中第一个查询中的列的名称。

解决方法很简单:写出所需的所有列的名称,并确保所有三个查询之间的顺序保持一致。

这些列不按名称排序(因此重命名列对您没有帮助),顺序是数据库中的一些内部顺序。

Using *被认为是不好的做法:你不知道你会得到什么,如果你只需要一些列,那么使用*检索超出必要的数据,使速度变慢。

顺便说一句,像这样(按数字)命名列是非常糟糕的编程习惯。你究竟如何让事情保持正轨?你的列有数字,你的表格有数字。您是否想编写混淆的代码?确保没有其他人可以使用您的代码?因为如果你是的话,这是一种方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mysql联合结果中的错误列 的相关文章

随机推荐

  • 使用相同类型的静态非空指针初始化后,指向自定义类型的静态指针保持为 nullptr

    我有两个命名空间 每个命名空间都有一个指向其中一个命名空间内的类 Window 的指针 图形 h namespace Graphic class Window void init static Window window App h nam
  • Java 数组 Setter Getter

    有人可以帮我解决一个小问题吗 例如 我想为 1 名学生设置 3 个讲座 但是当我尝试此操作时 我无法设置讲座 student setStudentLecture lecture student setStudentLecture lectu
  • Android在openstreetmap上绘制路线[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在寻找一种方法来绘制路线路径openstreetmap在我的 Android 应用程序中 我只有起点和终点 但不想要一条直线 关于
  • SF 符号在 SwiftUI 中调整为相同大小看起来不正确

    我在我的应用程序中显示一排各种 SF 符号 并希望将它们的大小调整为按钮 然而 由于 SF 符号一开始的大小并不相同 当我将它们全部调整到 44x44 时 有些符号显得太大 我可以根据它们的内容来调整它们的大小 但是我实际上不知道这些符号会
  • 如何将 jquery ajax 转换为原生 javascript?

    这是我的 ajaxHandler 我想将其转换为本机 javascript 即 使用 XMLHttpRequest 但我无法理解如何转换 ajaxHandler defaultAttributes type GET url index ph
  • vue 实例和 vue 组件之间的区别?

    我是vue js新手 在学习时有一些疑问 我现在对其实例和组件之间的关系有点困惑 据我所知 vue 构建的每个应用程序都应该只有一个实例 并且只有一个实例 如果需要 它可以有任意多个组件 但最近我看到了一个演示 在该演示中它有多个实例 所以
  • org.gdal.ogr.ogrJNI.GetDriverCount() 引起的 UnsatisfiedLinkError

    我正在 Windows 7 上使用 Eclipse Luna 使用 Java 进行开发 我正在将 gdal 用于某些 ogr 进程 并且从 eclipse 运行该应用程序没问题 但在同一台计算机上从命令行运行会遇到问题 我得到以下信息 Ca
  • Google App Engine Python、virtualenv 和 mimetypes

    我有使用 djangoappengine 构建并在 App Engine 开发服务器下运行的工作项目 所以我运行 manage py runserver 并且一切正常 所有需求 django djangoappengine 等 都位于项目根
  • igraph 和 tnet 之间中心性度量的差异

    我正在尝试获取有向加权网络的中心性度量 我一直在使用igraph and tnet包在R 然而 我发现使用这两个包获得的结果存在一些差异 并且我对这些差异的原因有点困惑 见下文 require igraph require tnet set
  • Android Studio 卡在“下载组件”上

    我已经安装了 android studio 当我想下载像sdk经理等 我被困在这里 像这样 我遇到了完全相同的问题 在反复看到这些不具有描述性的下载后 我感到沮丧 此外 在高速互联网上下载也需要花费大量时间 只需等待它就会完成
  • AlertController 不在窗口层次结构中

    我刚刚使用 ViewController 类创建了一个单视图应用程序项目 我想从位于我自己的类中的函数显示 UIAlertController 这是我的带有警报的班级 class AlertController UIViewControll
  • 将 DLL 拖放到 Windows Server 2008 .net 4.0 中的 GAC(“程序集”)

    我试图将一些代码部署到客户端计算机 但我不想在客户端计算机上安装 MS Windows SDK 工具 这意味着无权访问 gacutil 我还没有为我的代码创建安装程序 看起来这可能是 net 4 0 中仅有的两个选项 在过去 我只需启动 运
  • 在自定义 ViewModel 中重用验证属性

    当我开始使用时xVal http xval codeplex com 对于客户端验证 我仅实现使用域模型对象作为视图模型或视图模型中这些对象的嵌入实例的操作方法 这种方法在大多数情况下都可以正常工作 但在某些情况下 视图需要仅显示和回发模型
  • 如何禁用 tableView 中表列的重新排序?

    试图弄清楚如何禁用 javafx 2 中表列的重新排序 这是解决方案 tblView getColumns addListener new ListChangeListener Override public void onChanged
  • 找不到元素“beans”的声明

    我有弹簧罐spring 3 2 0 RC1 jar并试图实施Apache ActiveMQ helloWorld给出的教程中的程序here http icodingclub blogspot com 2011 07 introduction
  • 如何获取枚举的数值?

    假设你有 public enum Week SUNDAY MONDAY TUESDAY WEDNESDAY THURSDAY FRIDAY SATURDAY 一个人怎样才能得到int表示星期日是 0 星期三是 3 等 Week week W
  • 静态库依赖项在 Xcode 3.2.3 上的模拟器中编译,在设备上失败

    升级到 XCode 3 2 3 和 iPhone 3 2 4 0 SDK 在我的构建过程中引入了一个奇怪的错误 我有一个静态库 Compton 它本身依赖于 Three20 我将 Compton 构建为它所支持的客户端应用程序的依赖项 当我
  • MySQL POINT空间索引查询以中心POINT为半径范围内

    我看到许多解决方案可以从 a 中获取最近的行POINT转换为X and Y 并对距离进行三角计算 据我了解 这似乎没有利用空间索引 从最常见的意义上来说 如何利用空间索引 返回其空间索引的行POINT位于中心的半径范围内POINT 换句话说
  • NODEJS:立即发送文件和数据

    这就是我得到的 它工作得很好 但我希望能够在客户端登录我的网站时向他发送文件和数据 JSON 有什么办法可以结合起来吗 app get function req res res sendfile dirname index html 您无法
  • mysql联合结果中的错误列

    使用 union 时我得到了错误的列名称 这就是我所做的 我有两个非常大的表 具有相同的结构和不同的记录 所以就是这样 mysql gt select from e18 where 15 like car limit 1