MySQL基础练习题38-每位教师所教授的科目种类的数量

目录

题目

准备数据

分析数据

总结


题目

查询每位老师在大学里教授的科目种类的数量。

准备数据

sql 复制代码
## 创建库
create database db;
use db;

## 创建表
Create table If Not Exists Teacher (teacher_id int, subject_id int, dept_id int)

## 向表中插入数据
Truncate table Teacher
insert into Teacher (teacher_id, subject_id, dept_id) values ('1', '2', '3')
insert into Teacher (teacher_id, subject_id, dept_id) values ('1', '2', '4')
insert into Teacher (teacher_id, subject_id, dept_id) values ('1', '3', '3')
insert into Teacher (teacher_id, subject_id, dept_id) values ('2', '1', '1')
insert into Teacher (teacher_id, subject_id, dept_id) values ('2', '2', '1')
insert into Teacher (teacher_id, subject_id, dept_id) values ('2', '3', '1')
insert into Teacher (teacher_id, subject_id, dept_id) values ('2', '4', '1')

分析数据

教师 1:

  • 他在 3、4 系教科目 2。

  • 他在 3 系教科目 3。

教师 2:

  • 他在 1 系教科目 1。

  • 他在 1 系教科目 2。

  • 他在 1 系教科目 3。

  • 他在 1 系教科目 4。

sql 复制代码
select teacher_id,
       count(distinct subject_id) cnt
       from teacher
group by teacher_id;

总结

去除重复值使用distinct

相关推荐
诸神黄昏EX4 小时前
Android Build系列专题【篇四:编译相关语法】
android
盒马coding6 小时前
第19节-非规范化数据类型-Composite-types
数据库·postgresql
-雷阵雨-6 小时前
MySQL——桥梁JDBC
数据库·mysql·oracle
亿坊电商6 小时前
在PHP框架里如何进行数据库连接?
数据库·oracle·php
满昕欢喜6 小时前
SQL Server从入门到项目实践(超值版)读书笔记 28
数据库·sql·sqlserver
雨白6 小时前
优雅地处理协程:取消机制深度剖析
android·kotlin
楚韵天工7 小时前
宠物服务平台(程序+文档)
java·网络·数据库·spring cloud·编辑器·intellij-idea·宠物
leon_zeng07 小时前
更改 Android 应用 ID (ApplicationId) 后遭遇记
android·发布
JanelSirry8 小时前
MySQL分区表(PARTITION):水平分表示例 (基于用户ID哈希分表)不依赖第三方中间件
mysql·中间件·哈希算法
李白你好8 小时前
一款专业的多数据库安全评估工具,支持 **PostgreSQL、MySQL、Redis、MSSQL** 等多种数据库的后渗透操作
数据库·mysql·postgresql