没有外键怎么引用?

hk8txs48  于 2021-06-21  发布在  Mysql
关注(0)|答案(3)|浏览(261)

创建两个表:
课程(课程id(主键),课程名称)
学生(卷号(主键)、姓名、课程id(外键))并检索课程“bsc”中录取的所有学生的姓名。
设bsc的课程号为105。
查询将是:从课程号=105的学生中选择姓名
我是否可以在不知道课程id的情况下查询学生的姓名(仅使用课程名称)?

nqwrtyyt

nqwrtyyt1#

可以在表之间使用内部联接

SELECT s.Name 
  FROM Student s  
  INNER JOIN Course c on c.course_id  = s.Course_id
  WHERE c.Course_name = 'your_course_name'

或者像这样使用

SELECT s.Name 
  FROM Student s  
  INNER JOIN Course c on c.course_id  = s.Course_id
  WHERE c.Course_name like 'your_course_name'
6za6bjd0

6za6bjd02#

是的,你可以。

SELECT st.Name 
FROM Student st  
INNER JOIN Course c on c.course_id  = st.Course_id
WHERE 
c.Course_name = 'Course_Name';
w6lpcovy

w6lpcovy3#

或使用 WHERE IN (...) ```
SELECT
Student.Name
FROM
Student
WHERE
Student.Course_id IN (
SELECT
Course.cource_id
FROM
Course
WHERE
Course.Name = 'BSC'
)

相关问题