1

ワーカー名とマネージャー名で構成される非常に基本的なテーブルがあります。

CREATE TABLE Work (
Worker_name varchar(50) NOT NULL 
Manager_name varchar(50) NOT NULL;

このテーブルを使用すると、ワーカーを自分のマネージャーにしたり、マネージャーを複数のワーカーに割り当てたりすることができます。

少なくとも 2 人の異なる従業員を管理しているすべてのマネージャーを表示するクエリを作成することになっていますが、集計コマンドや GROUP BY を使用できません。

誰かが私にヒントを与えることができれば、それは素晴らしいことです。私は物事を理解するのが好きですが、これは本当に私を困惑させました.

ありがとう、アンドリュー

4

2 に答える 2

1

このクエリは少し面倒ですが、必要なことを実行するか、少なくとも正しい軌道に乗せる必要があります:)

SELECT w1.* FROM Work w1
    INNER JOIN Work w2 ON w2.Manager_name = w1.Manager_name AND w2.Worker_name != w1.Worker_name
    INNER JOIN Work w3 ON w3.Manager_name = w1.Manager_name AND w3.Worker_name != w2.Worker_name
    WHERE w1.Manager_name = w1.Worker_name
于 2012-09-28T06:11:53.390 に答える
0

以下のSQLを試すことができます。mysqlでうまく機能します。助けてください

Work a where a.Manager_name in (Work b where a.Worker_name != b.Worker_name から Manager_name を選択) から個別の Manager_name を選択します。

于 2012-09-28T06:31:38.037 に答える