0

我正在尝试在MYSQL中运行查询以返回正确的Instructor_ID但由于某种原因它返回两个值并且instructor_ID应该2不是1

我有一个 PK 的Person_ID,它是 FK 的Instructor_ID。以前我使用了为 Instructor_ID 1 工作的组。请检查图像。

任何帮助表示赞赏。

在此处输入图像描述

使用表格设计进行编辑:

在此处输入图像描述

4

2 回答 2

0

你能分享一下表格的结构吗?

我猜你在这个 Betsy 的 Instructor 中有 2 条记录。您可以通过运行查询来检查这一点

select * from instructor where f_name = 'Betsy'

顺便说一句,您应该为两个表指定连接条件

from instructor i inner join people p on p.person_id = i.person_id

另外,您不应该像这样使用 group by,请查看手册。在这种情况下,您需要不同。

你想选择什么?我的意思是,说真的,问题是什么?

于 2013-11-06T20:30:36.193 回答
0

你需要加入这两个表......InstructorPeople

您的查询将是:

select  Instructor_ID, f_name, l_name, Person_ID
from    Instructor, People 
where   Instructor.Instructor_ID = Person.Person_ID and 
        f_name = "Betsy" 

或者

select  Instructor_ID, f_name, l_name, Person_ID
from    Instructor
        join People 
          on Instructor.Instructor_ID = Person.Person_ID
where   f_name = "Betsy" 

group by没有必要。

于 2013-11-06T20:32:37.770 回答