乐趣区

关于mysql:MySQL-Every-derived-table-must-have-its-own-alias错误修复方法

本文首发:《MySQL「Every derived table must have its own alias」1248 谬误修复法》

在写带有子查问或者在查问时产生长期表的查问时,可能会呈现这个谬误:

ERROR 1248 (42000): Every derived table must have its own alias

意思是「每一个派生进去的表都必须给它命名一个本人的别名」

咱们看个例子:

假如有一张「顾客购买记录」的表 – kalacloud_purchases 记录了顾客在商店购物的信息。咱们要写个查问,查看哪些客户在多个商店买过货色:

SELECT DISTINCT customer_id, SUM(1)
  FROM (SELECT DISTINCT customer_id, store_id FROM kalacloud_purchases)
  GROUP BY customer_id HAVING 1 < SUM(1);

运行后,能够看到呈现 1248 谬误:Every derived table must have its own alias

在这段报错代码中:

FROM (SELECT DISTINCT customer_id, store_id FROM kalacloud_purchases)

这段命令会先查 kalacloud_purchases 表,而后生成一张新的长期表,如果这个长期表没有命名,就会导致 1248 谬误。咱们只须要加上「as 长期表别名」即可修复谬误

加上「AS customer」别名,这样就解决了这个问题。

应用「卡拉云」搭建数据看板

咱们能够在命令行中间接执行 SQL 对须要的数据进行查问,不过有时候一些经营数据,剖析数据须要周期性的重复查问,总是复制粘贴代码十分麻烦。有时咱们还须要和各部门协同,将查问好的数据分享给单干组。这种场景下,你能够试试卡拉云。

卡拉云能够疾速搭建数据看板和数据后盾,只有你会写 SQL,齐全不必懂前端也可在 5 分钟内搭建一套依据本人需要设计的数据看板,还能够做成数据查问零碎,一键分享给协作组的同学应用,再也不必放心本人沦为人肉查问机。

卡拉云不仅能够像命令行一样灵便,还可依据本人的工作流,定制开发。无需繁琐的前端开发,只须要简略拖拽,即可疾速搭建企业外部工具。 数月的开发工作量,应用卡拉云后可缩减至数天。

卡拉云可疾速接入的常见数据库及 API,可依据公司工作流需要,轻松搭建数据看板,并且可分享给组内的小伙伴共享数据,仅需拖拽一键生成前端代码,简略一行代码即可映射数据到指定组件中。

卡拉云可间接增加导出按钮,导出实用于各类剖析软件的数据格式,方便快捷。

下图为应用卡拉云在 5 分钟内搭建的「优惠券发放核销」后盾,仅须要简略拖拽即可疾速生成前端组件,只有会写 SQL,便可搭建一套趁手的数据库工具。


立刻开明卡拉云,搭建属于本人的数据后盾工具吧。

无关 MySQL 教程,可持续拓展学习:

  • 如何近程连贯 MySQL 数据库,阿里云容许外网连贯教程
  • MySQL 工夫戳用什么类型 – MySQL 工夫函数详解
  • MySQL 中如何实现 BLOB 数据类型的存取,BLOB 有哪些利用场景?
  • 如何在 MySQL / MariaDB 中跳过多张表导出或指定多张表导出备份
  • MySQL 触发器的创立、应用、查看、删除教程 - 六种状况实战
  • 如何将 MySQL / MariaDB 的查问后果保留到文件
  • MySQL 分组查问实战 如何查问每组最第一条、最初一条记录,单多字段查问、分组筛选、最大小值排序
退出移动版