私のソリューションが動作していない理由はわかりません。合計とSQLの結合
私はデータベース内の部門別に従業員数を数えようとしています。
は、次の2つのテーブルがあります。
CREATE TABLE DEPARTMENT
(
NAME VARCHAR(32) NOT NULL,
ID INT NOT NULL PRIMARY KEY
);
CREATE TABLE EMPLOYEE
(
NAME VARCHAR(32) PRIMARY KEY NOT NULL,
DEPARTMENT INT NOT NULL REFERENCES DEPARTMENT(ID)
);
と私は部門の従業員の数を表示するビューを作成しました。
CREATE
OR REPLACE VIEW VIEW_NB AS
SELECT
DEPARTMENT.NAME AS DEPARTEMENT,
count(*) AS nb
FROM
DEPARTMENT
LEFT JOIN
EMPLOYEE
ON DEPARTMENT.ID = EMPLOYEE.DEPARTMENT
GROUP BY
DEPARTMENT.ID,
DEPARTMENT.NAME;
SELECT
ADD_DEPARTMENT('FRANCE', 10);
SELECT
ADD_DEPARTMENT('SPAIN', 100);
SELECT
ADD_EMPLOYEE('JOSE', 10);
結果は
departement | nb
-------------+----
FRANCE | 1
SPAIN | 1
ですが、それは私が左の加入を使用する必要性を理解し
departement | nb
-------------+----
FRANCE | 0
SPAIN | 1
でなければなりません。 私のビューには、従業員がいなくても、すべての部門に対して少なくとも1人の従業員がいます。
私は何かを見逃しましたか?もしあれば何?