次の表を使用して、親とその保護者を返すクエリを作成したいと考えています。私の質問は、person テーブルの name 属性を 2 回使用して、介護者の名前と親の名前を返すにはどうすればよいかということです。サンプルコードをいただければ幸いです。十分に説明していないことは承知していますが、誰かが私の意味を理解している場合は、上記を自由に編集してください。より具体的には、個人テーブルのみを使用して、親とその子供に関する情報を保存し、関連するそれぞれの名前を表示したいと考えています。単一のテーブルでこれを行うにはどうすればよいですか。
提供されたいくつかのアドバイスを使用して、クエリを作成できましたが、テーブルの問題により機能しません。次のテーブルを使用しています。
CREATE TABLE Person
(
personID INT NOT NULL,
name VARCHAR(50),
address VARCHAR(70),
phone VARCHAR(15),
email VARCHAR(30),
year INT,
PRIMARY KEY (personID)
);
CREATE TABLE Guardian
(
parentID INT NOT NULL,
childID INT NOT NULL,
PRIMARY KEY (parentID, childID)
FOREIGN KEY (parentID) REFERENCES (personID),
FOREIGN KEY (childID) REFERENCES (personID)
);
これを適切に機能させるには、どこでどのステートメントを使用する必要がありますか。問題は、両方の外部キー ステートメントが person テーブルの同じキーを参照していることだと思います。親と子の両方を検索するときに、エラーを発生させずに同じ属性を参照するにはどうすればよいですか。