create table Course( C_ID varchar(10) primary key,-- 课程编号 C_Name varchar(20) not null unique-- 课程名称 ) comment '课程表'; create table SC( S_ID varchar(20),-- 学号 C_ID varchar(10),-- 课程编号 Score int check(Score>=0 and Score<=100)-- 成绩 ) comment '成绩表'; create table Student( S_ID varchar(20) primary key,-- 学生编号 S_Name varchar(20) not null,-- 姓名 S_Age int,-- 年龄 S_Sex enum('男','女') default '男'-- 性别 ) comment '学生表';
时间: 2024-03-24 07:35:59 浏览: 120
感谢提供数据表结构,以下是查询各个课程及相应的选修人数、课程表、学生表和成绩表的 SQL 查询语句:
查询各个课程及相应的选修人数:
```
SELECT C_Name, COUNT(*) AS Num
FROM Course
JOIN SC ON Course.C_ID = SC.C_ID
GROUP BY Course.C_ID;
```
查询课程表:
```
SELECT *
FROM Course;
```
查询学生表:
```
SELECT *
FROM Student;
```
查询成绩表:
```
SELECT *
FROM SC;
```
希望以上查询语句能够对您有所帮助。需要注意的是,以上查询语句仅供参考,具体实现需要根据实际情况进行调整和修改。
相关问题
数据库,包括表 student(student_id,student_name,sex,民族,手机号,身份证号,…) course(course_id,course_name,学分,课程类别) course_score(id, student_id,course_id,score) (一)写出以下SQL语句: 1、创建student表、course表及course_score表(学生选课表): student表主键为student_id字段,course表主键为课程号字段; 外键约束:course_score. student_id,course_score. course_id; 设置课程类别的默认值为必修; 设置姓名非空; 设置身份证号唯一约束; 设置检查约束,sex字段取值男或女;
创建student表的SQL语句:
```
CREATE TABLE student (
student_id INT PRIMARY KEY,
student_name VARCHAR(50) NOT NULL,
sex CHAR(1) CHECK (sex IN ('男', '女')),
nation VARCHAR(20),
phone VARCHAR(20),
id_card VARCHAR(18) UNIQUE,
...
);
```
创建course表的SQL语句:
```
CREATE TABLE course (
course_id INT PRIMARY KEY,
course_name VARCHAR(50),
credit INT,
category VARCHAR(20) DEFAULT '必修'
);
```
创建course_score表的SQL语句:
```
CREATE TABLE course_score (
id INT PRIMARY KEY,
student_id INT,
course_id INT,
score FLOAT,
FOREIGN KEY (student_id) REFERENCES student(student_id),
FOREIGN KEY (course_id) REFERENCES course(course_id)
);
```
以上SQL语句中,外键约束用FOREIGN KEY关键字来实现,唯一约束用UNIQUE关键字来实现,检查约束用CHECK关键字来实现。
创建student表、course表及course_score表(学生选课表): student表主键为student_id字段,course表主键为课程号字段; 外键约束:course_score. student_id,course_score. course_id; 设置课程类别的默认值为必修; 设置姓名非空; 设置身份证号唯一约束; 设置检查约束,sex字段取值男或女;
好的,让我来为您解答:
首先,我们可以使用以下 SQL 代码创建 student 表:
```
CREATE TABLE student (
student_id INT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
id_card VARCHAR(18) UNIQUE,
sex VARCHAR(2) CHECK (sex IN ('男', '女'))
);
```
接下来,我们可以使用以下 SQL 代码创建 course 表:
```
CREATE TABLE course (
course_id INT PRIMARY KEY,
course_name VARCHAR(50) NOT NULL,
course_type VARCHAR(10) DEFAULT '必修'
);
```
最后,我们可以使用以下 SQL 代码创建 course_score 表,并添加外键约束:
```
CREATE TABLE course_score (
student_id INT,
course_id INT,
score INT,
PRIMARY KEY (student_id, course_id),
FOREIGN KEY (student_id) REFERENCES student(student_id),
FOREIGN KEY (course_id) REFERENCES course(course_id)
);
```
以上代码中,我们创建了 course_score 表,并将 student_id 和 course_id 字段作为主键。同时,我们在这两个字段上添加了外键约束,以确保它们分别引用 student 表和 course 表中的主键。
阅读全文