0

私は mySQL を学習していますが、mySQL クエリを使用して部門内の従業員の総数をリストする方法について少し混乱しています。

Emp(eid: 整数、ename: 文字列、年齢: 整数、給与: 実数) Works(eid: 整数、did: 整数、pct_time: 整数) Dept(did: 整数、予算: 実数、managerid: 整数)

*これは私の本が扱っている例ですが、合計集計関数を使用して例を説明するのを手伝ってくれる人がいると思いますか? それとも、これを使って...従業員の総数をリストするのは完全に間違っていますか?

4

3 に答える 3

1

あなたがSUM言ったように、あなたは を使いたくなるでしょう。Joinそのため、最初にテーブルを取得してから、employee_id 行の SUM を取得する必要があります。

Select Emp.eid, SUM(Emp.eid) as employee_sum From, Dept.did
Emp
LEFT JOIN Works On
Emp.eid = Works.eid
INNER JOIN Dept ON
Works.did = Dept.did
Group By Emp.eid, Dept.did
于 2013-04-04T12:53:22.337 に答える
0

これを行う最も簡単な方法は、単純に結合を使用することです。

選択カウント(E.eid)

従業員E、工場W、部門Dから

どこで (E.eid = W.eid AND D.did = W.did );

Worksテーブルは、2 つのテーブル、つまりEmpDeptをリンクします。したがって、このクエリは、部門内の従業員数のみを返します。

于 2013-04-04T13:24:27.003 に答える