/*
FROM后面可以跟具体的表名,也可以跟一个查
询结果(此查询结果其实就是相当于一张表,
注意:必须要给它取一个别名)
*/
#给查询结果取别名
SELECT * FROM book, (SELECT 'a', 'b' FROM DUAL) AS testTable;
SELECT * FROM book, (SELECT '江西省', '赣州市', '于都县', 666) AS testTable;
#AS关键字可以省略
SELECT * FROM book, (SELECT 'hello', 'hi' FROM booktype) testTable;
SELECT * FROM book, (SELECT * FROM booktype) AS testTable;
#AS关键字可以省略
SELECT * FROM book, (SELECT * FROM booktype) testTable;
#FROM后面可以跟具体的表名,也可以跟一个查询结果
SELECT 'a', 'b' FROM DUAL;
(SELECT 'a', 'b' FROM DUAL);
SELECT 'a', 'b'; #FROM DUAL可以省略
#(SELECT 'a', 'b' FROM DUAL) AS testTable; #报错
SELECT * FROM (SELECT 'a', 'b' FROM DUAL) AS testTable;
SELECT *, 'a', 'c' FROM (SELECT 'a', 'b' FROM DUAL) AS testTable;
#SELECT 'a', 'c', * FROM (SELECT 'a', 'b' FROM DUAL) AS testTable; #报错
SELECT *, 'a', 'c' FROM (SELECT 'a', 'b' FROM DUAL) AS testTable;
SELECT *, 'a', 'c' FROM (SELECT 'a', 'b') AS testTable;
#AS可以省略
SELECT *, 'a', 'c' FROM (SELECT 'a', 'b') testTable;
#
SELECT *, 'a', 'c' FROM (SELECT 'a' AS hello, 'b' AS hi) testTable;
SELECT *, hello, hi, 'a', 'c' FROM (SELECT 'a' AS hello, 'b' AS hi) testTable;
SELECT *, testTable.hello, hi, 'a', 'c' FROM (SELECT 'a' AS hello, 'b' AS hi) testTable;