在查询单个表,单个字段时,一般不会用虚拟表。但是我们将多个查询的结果一次显示出来,就可能会遇到。
如:SELECT * FROM XXX 不会用到。
我们查多个表时,查出的结果,需一次显示时,会出现如:
SELECT * FROM (
(SELECT ORG_NO FROM XXXA ORDER BY XXXID DESC LIMIT 1)
(SELECT ORG_NO FROM XXXB ORDER BY XXXID DESC LIMIT 1)
);
在执行时,会报错1248 - Every derived table must have its own alias
遇到这个问题,我是通过添加别名的方式来处理
如下:
SELECT * FROM (
(SELECT ORG_NO FROM XXXA ORDER BY XXXID DESC LIMIT 1) A
(SELECT ORG_NO FROM XXXB ORDER BY XXXID DESC LIMIT 1) B
);
这样会就可以一次显示出所有数据,不用分窗口显示、查看、导出
遇到类似问题的朋友可以试下