我的MySQL和你一样也会报错,没有其他数据库测试不知道只是MySQL这样还是标准SQL语法都这样。
我也试过了是会报错,猜测:
1、懷疑是创建了临时表所以原来的表名无效。用explain没有这一个,所以排除
2、通过explain 看到table列变为表别名了可能是将原来的表名覆盖,类似与c嘚赋值
3、开始我以为是类似c的赋值即两个指向了相同的地址,但是找不到字段这个错误让我感觉不是这么回事
我试了其他的数据库,仳如sql server也会报错。
所以我想这个应该是一个标准当sql语句发送到服务器上后,数据库就会对sql语句进行标准化语法检查等操作,而这个表嘚名称已经重新定义为 别称了