3

データベースがあり、クエリを実行しています:

select * from 
       Exams LEFT OUTER JOIN Test on Test.tExamID = Exams.eID       
       LEFT OUTER JOIN Test on Users.userID = Test.tUserID

しかし、エラーが発生しましambiguous column name main.Test.tIDた。それを見たことがありますか?何が起こるかを理解するのを手伝ってください。

以下の私のデータベース:

    CREATE TABLE [Exams] (
      [eID] INTEGER NOT NULL PRIMARY KEY, 
      [eType] INTEGER NOT NULL, 
      [eLevel] INTEGER NOT NULL, 
      [eTime] INTEGER, 
      [eNote] CHAR);


    CREATE TABLE [Users] (
      [userID] TEXT NOT NULL, 
      [userPassword] TEXT NOT NULL);

    CREATE UNIQUE INDEX [userID] ON [Users] ([userID]);


    CREATE TABLE [Test] (
      [tID] INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, 
      [tUserID] TEXT NOT NULL REFERENCES [Users]([userID]), 
      [tExamID] INTEGER NOT NULL REFERENCES [Exams]([eID]), 
      [tDate] DATE NOT NULL, 
      [tScore] INTEGER NOT NULL, 
      [tNote] CHAR NOT NULL);
4

1 に答える 1

3

あなたはおそらくタイプミスを導入しました...あなたはおそらく持っていたかったでしょう:

select * from 
Exams LEFT OUTER JOIN Test on Test.tExamID = Exams.eID       
LEFT OUTER JOIN Users on Users.userID = Test.tUserID
于 2013-07-11T13:42:45.453 に答える