sql server如何关联两个表

题目是在COURSE表中选中课程,STUDENT_COURSE表显示如图的信息

img

img

img

  • 你可以看下这个问题的回答https://ask.csdn.net/questions/7805902
  • 这篇博客你也可以参考下:数据库系统概论Sql 练习表student、sc、course
  • 除此之外, 这篇博客: SQL server数据库实验(一)数据定义和数据导入导出中的 4.使用SQL语句删除课程表COURSE的开课学期属性列SEMESTER 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 先删除此属性列SEMESTER的约束

    alter table COURSE
    drop constraint CK_COURSE_1
    

    再删除此属性列

    alter table COURSE
    drop column SEMESTER
    
  • 以下回答由chatgpt基于相关博客总结生成:

    我可以提供一个基本的SQL语句示例,实现从COURSE表中选择课程并在STUDENT_COURSE表中显示相应信息的需求。操作步骤如下: 1. 在SQL Server中创建数据库"Student"以及两个表COURSE和STUDENT_COURSE,可以使用以下代码:

    CREATE DATABASE Student; USE Student;

    CREATE TABLE COURSE ( COURSE_ID int NOT NULL PRIMARY KEY, COURSE_NAME varchar(50) NOT NULL, COURSE_CREDIT float NOT NULL );

    CREATE TABLE STUDENT_COURSE ( COURSE_ID int NOT NULL, STUDENT_ID int NOT NULL, SCORE float NOT NULL, CONSTRAINT FK_STUDENT_COURSE_COURSE FOREIGN KEY (COURSE_ID) REFERENCES COURSE(COURSE_ID), CONSTRAINT FK_STUDENT_COURSE_STUDENT FOREIGN KEY (STUDENT_ID) REFERENCES STUDENT(STUDENT_ID) );

    1. 在COURSE表中插入数据,可以使用以下代码:

    INSERT INTO COURSE (COURSE_ID, COURSE_NAME, COURSE_CREDIT) VALUES (1, '数据库原理', 3.0), (2, '操作系统', 2.5), (3, '数据结构与算法', 4.0);

    1. 在STUDENT_COURSE表中插入数据,可以使用以下代码:

    INSERT INTO STUDENT_COURSE (COURSE_ID, STUDENT_ID, SCORE) VALUES (1, 1001, 87.5), (1, 1002, 92.0), (2, 1001, 75.0), (2, 1003, 81.5), (3, 1002, 90.5), (3, 1003, 95.0);

    1. 使用INNER JOIN将COURSE表和STUDENT_COURSE表关联,可以使用以下代码:

    SELECT COURSE.COURSE_NAME, STUDENT_COURSE.STUDENT_ID, STUDENT_COURSE.SCORE FROM COURSE INNER JOIN STUDENT_COURSE ON COURSE.COURSE_ID = STUDENT_COURSE.COURSE_ID;

    这条语句将返回一个结果集,包含每门课程的名字、学生的ID和分数等信息。

    这只是一个基本的示例,实际上在实际工作中,还需要考虑其他因素,例如表设计、索引、分区等等。如果您需要更详细的帮助,请告诉我更多细节,我将尽力提供更具体的解决方案。

join 找相同字段作为关联条件