0

割り当てテーブルと従業員テーブルを含むデータベースがあります。各テーブルには従業員 ID が含まれます。複数の従業員が同じプロジェクトに取り組んでおり、各プロジェクト ID と作業時間の従業員名のリストを取得できる必要があります。以下を試してみましたが、うまくいきません。

Select FirstName, LastName, ProjectID, HoursWorked
From employee e, assignment a
Where e.EmployeeNumber = a.EmployeeNumber
Group by projectID; 

編集:最初の回答の後、クエリを次のように変更しました。

SELECT  FirstName, LastName, ProjectID, HoursWorked
FROM    employee e, assignment a
Where e.EmployeeNumber = a.EmployeeNumber
GROUP   BY ProjectID, FirstName, LastName;

そして、結果は良好でした。グループごとの部分を完全には理解していないと思います。

4

1 に答える 1

1

列の合計値を取得するには、集計関数 を使用する必要があります。SUM()

SELECT  FirstName, 
        LastName, 
        ProjectID, 
        SUM(HoursWorked) totalHoursWorked
FROM    employee e
        INNER JOIN assignment a
            ON e.EmployeeNumber = a.EmployeeNumber
GROUP   BY FirstName, LastName, ProjectID
于 2013-03-09T22:11:03.780 に答える