Every derived table must have its own alias

今天写一个mysql语句

SELECT `A` a FROM (SELECT dt.`A` FROM `db`.`table` dt )
        

其实是一个简单的嵌套查询,但是就报错了 “Every derived table must have its own alias”。

我英语不太好,就去百度翻译了一下这句话,意思是“每个派生出来的表都必须有一个自己的别名”,可以把括号里面的查询语句的结果集理解为新派生的一个表和数据,要从这个派生表中查询数据就必须给这个派生表取一个别名

SELECT B.`A` a FROM (SELECT dt.`A` FROM `db`.`table` dt )  AS B

将这个语句改成这样就行了

在写SELECT,UPDATE语句的时候习惯性的给表,查询的字段取一个别名,既方便又稳妥

时间: 2024-07-29 07:21:42

Every derived table must have its own alias的相关文章

错误代码: 1248 Every derived table must have its own alias

1.错误描述 1 queries executed, 0 success, 1 errors, 0 warnings 查询:SELECT stu_id, (SELECT stu_name FROM t_student_info t WHERE t.stu_id = t.stu_id) stu_name FROM (SELECT SUM( CASE course WHEN '敮.. 错误代码: 1248 Every derived table must have its own alias 执行耗

Mysql碰到“Every derived table must have its own alias”类似错误说明

Every derived table must have its own alias 这句话的意思是说每个派生出来的表都必须有一个自己的别名 一般在多表查询时,会出现此错误. 因为,进行嵌套查询的时候子查询出来的的结果是作为一个派生表来进行上一级的查询的,所以子查询的结果必须要有一个别名 把MySQL语句改成:select count(*) from (select * from --) as total; 问题就解决了,虽然只加了一个没有任何作用的别名total,但这个别名是必须的 sele

mysql出现错误“ Every derived table must have its own alias”

Every derived table must have its own alias 这句话的意思是说每个派生出来的表都必须有一个自己的别名 一般在多表查询时,会出现此错误. 因为,进行嵌套查询的时候子查询出来的的结果是作为一个派生表来进行上一级的查询的,所以子查询的结果必须要有一个别名 问题就解决了,虽然只加了一个没有任何作用的别名total,但这个别名是必须的

mysql union出错: "Every derived table must have its own alias"

SELECT count(*) from (SELECT province_code as area_id, count(*) from t_cas_rural_selected GROUP BY province_code UNION all SELECT city_code as area_id, COUNT(*) from t_cas_rural_selected GROUP BY city_code UNION all SELECT county_code as area_id, COU

MySQL 派生表(Derived Table) Merge Optimization

本文将通过演示告诉你:MySQL中派生表(Derived Table)是什么?以及MySQL对它的优化. Background 有如下一张表: mysql> desc city; +------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------+-------------+------+-----+---------+-

MySQL1-基础知识点2-查询

本文中有一些例子,例子中假设DB为test表名为user. 1.语法(1)select 列名称 from 表名称 [查询条件]:列名称可以包含多个,用逗号隔开:可以用通配符,如*查询表中所有内容,列的顺序一般是按照表定义的顺序(除非确实需要每个列,否则尽量不要使用,可能影响性能).无论哪些列,检索出的行的顺序是不确定的.(2)select distinct 列名称 from --:只返回不同的列:如果查询多列,则只有当多列都相同时,相应数据才会被隐藏,即只有有一列不同,数据都会显示.(3)sel

MYSQL<五>

-- ########## 01.LIMIT的使用和分页 ########## INSERT INTO studentinfo VALUES(NULL, '刘备', '男', 35), (NULL, '关羽', '男', 30), (NULL, '张飞', '男', 25), (NULL, '貂蝉', '女', 15), (NULL, '吕布', '男', 33), (NULL, '甄姬', '女', 22), (NULL, '董卓', '男', 55); SELECT * FROM stude

揭穿MySql与Oracle之间的秘密

最近敲项目的时候偶然接触了MySql,但是却由于和Oracle之间的一些差别尤其是sql语句上的一些区别,让我走了很多弯路,所以这里就来总结一下它们两个之间的差别. 总的来说,Oracle是大型数据库而Mysql是中小型数据库,虽然Mysql是开源的但只是占市场的20%,而价格非常高的Oracle市场占有率是MySql的2倍.从使用上来讲,Oracle支持大并发.大访问量,是OLTP(On-Line Transaction Processing联机事务处理系统)最好的工具:但是Oracle安装会

[mysql使用(3)] 使用mysql的时候遇到的一些错误

1.Err1055,出现这个问题往往是在执行sql语句时候,在最后一行会出现这个问题. [Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column 'information_schema.PROFILING.SEQ' which is not functionally dependent on columns in GROUP BY clause