我有以下数据:
http://i.imgur.com/e4d8M8V.png?1
我运行以下MySQL代码
select distinct i.InstructorID, i.Salary
from Instructor i
where (i.InstructorID NOT IN (select o.InstructorID from Offering o));
这里给出了所需的输出:
http://i.imgur.com/rkFKseX.png?1
我怎样才能从这个查询中获得工资?
我试过
$MySQL:>select (i.Salary)
from (select distinct i.InstructorID, i.Salary
from Instructor i
where (i.InstructorID NOT IN (select o.InstructorID from Offering o)));
以及尝试将第一个选择参数更改为i1.Salary或只是简单(Salary),但无论我做什么我只是得到语法错误
SQLException: com.mysql.jdbc.exceptions.MySQLSyntaxErrorExceptio
答案 0 :(得分:1)
在MySQL中,在任何子查询之后都需要一个表别名。所以以下内容应该有效:
select t.Salary
from (select distinct i.InstructorID, i.Salary
from Instructor i
where (i.InstructorID NOT IN (select o.InstructorID from Offering o))
) t;
请注意t
。这是子查询的名称,是MySQL所必需的。名称“t”是任意的。你可以给它任何有效的名字。