【问题标题】:Sqlite, join table: ambiguous column errorSqlite,连接表:不明确的列错误
【发布时间】:2013-07-11 13:33:32
【问题描述】:

我有一个数据库,我正在执行一个查询:

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);

【问题讨论】:

  • ...LEFT OUTER JOIN Test on Users... => ...LEFT OUTER JOIN Users on Users...

标签: android sqlite join ambiguous


【解决方案1】:

您可能输入了一个错字...您可能想要:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-11-11
    • 2014-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-23
    • 2012-10-04
    相关资源
    最近更新 更多