1. ホーム
  2. データベース
  3. マイサク

[解決済み] ユニークなテーブル/エイリアスではない

2021-12-31 01:14:50

質問

次のようなSQLクエリを作成します。

SELECT Project_Assigned.ProjectID, Project_Title, Account.Account_ID, Username, Access_Type
FROM Project_Assigned 
JOIN Account 
  ON Project_Assigned.AccountID = Account.Account_ID
JOIN Project
  ON Project_Assigned.ProjectID = Project.Project_ID
where Access_Type = 'Client';

実行すると、エラーが発生します。

ERROR 1066 (42000): Not unique table/alias:

解決方法は?

クエリには、参照する複数のテーブルに同じ名前で存在する可能性のあるカラムが含まれているため、一意ではないエラーが発生します。結合の際には、参照を明示するか、テーブルの別名を使用するとよいでしょう。

試す

    SELECT pa.ProjectID, p.Project_Title, a.Account_ID, a.Username, a.Access_Type, c.First_Name, c.Last_Name
      FROM Project_Assigned pa
INNER JOIN Account a
        ON pa.AccountID = a.Account_ID
INNER JOIN Project p
        ON pa.ProjectID = p.Project_ID
INNER JOIN Clients c
        ON a.Account_ID = c.Account_ID
     WHERE a.Access_Type = 'Client';