如何创建新视图名称为FULLVIEW。并获取以下列:MIN(LASTNAME)名称为NAME,DISTINCT(MANAGER_ID)重命名为“Available Manager_id”,COUNT(MANAGER_ID)重命名为“否”。 of Manager_id“和每个job_id的SUM(SALARY)。并应用Full Outer Join以尽可能的方式创建FULLVIEW视图,而无需交换列。
我似乎无法弄清楚如何做到这一点因为我对SQL有点新意。我的老板给了我这个项目的练习。这实际上是最后一次练习,这是我唯一无法弄清楚的。
我有两张桌子可用:
我一直试图这样做,但无法弄明白。
SQL> CREATE VIEW FULLVIEW AS
2 SELECT LASTNAME, EMPLOYEES.MANAGER_ID, DEPARTMENTS.MANAGER_ID, SALARY
3 FROM EMPLOYEES
4 FULL OUTER JOIN
5 (
6 SELECT LASTNAME, MIN('LASTNAME') AS NAME
7 FROM EMPLOYEES)
8 (
9 SELECT DISTINCT MANAGER_ID 'AVAILABLE MANAGER_ID'
10 FROM EMPLOYEEES)
11 (
12 SELECT COUNT MANAGER_ID 'NO. OF MANAGER_ID'
13 FROM EMPLOYEEES)
14 (
15 SELECT SUM SALARY FOR EACH ROW
16 FROM EMPLOYEES);
您需要对列别名使用双引号和“as”关键字。例如:
SELECT DISTINCT MANAGER_ID AS "AVAILABLE MANAGER_ID"
CREATE VIEW FULLVIEW
AS (
SELECT MIN(LASTNAME) AS NAME,
DISTINCT(E.MANAGER_ID) AS "Available Manager_id",
COUNT(E.MANAGER_ID) AS "No.of Manager_id",
JOB_ID,
sum(salary)
FROM EMPLOYEES E
FULL OUTER JOIN DEPARTMENTS D ON E.DEPARTMENT_ID = D.DEPARTMENT_ID
GROUP BY JOB_ID);