麻瓜之我要学sql,啦啦啦啦
四张表
学生表:编号,姓名,性别,班级,生日
CREATE TABLE IF NOT EXISTS student(
sno TINYINT UNSIGNED NOT NULL,
sname VARCHAR(20) NOT NULL,
ssex ENUM('male','female') DEFAULT 'male',
sbirthday DATE NOT NULL,
class VARCHAR(20) NOT NULL,
PRIMARY KEY(sno)
)
课程表:课程编号,课程名称,教授课程的老师编号
CREATE TABLE IF NOT EXISTS course(
cno TINYINT UNSIGNED NOT NULL,
cname VARCHAR(20) NOT NULL,
tno TINYINT UNSIGNED NOT NULL,
PRIMARY KEY(cno)
)
分数表:学生编号,课程编号,分数
CREATE TABLE IF NOT EXISTS score(
sno TINYINT UNSIGNED NOT NULL,
cno TINYINT UNSIGNED NOT NULL,
degree DECIMAL(4, 1)
);
老师表:老师编号,姓名,老师性别,生日,职称,部门
CREATE TABLE IF NOT EXISTS teacher(
tno TINYINT UNSIGNED NOT NULL,
tname VARCHAR(20) NOT NULL,
tsex ENUM('male','female') DEFAULT 'male',
tbirthday DATE,
tprof VARCHAR(10) NOT NULL,
tdepart VARCHAR(20) NOT NULL,
PRIMARY KEY(tno)
);
开始撸题:
- 查询
student表中的所有记录的sname,ssex,class列
SELECT sname,ssex,class FROM student;

查询教师所在的所有单位(既不重复的单位)
SELECT tdepart is FROM teacher;(全部单位)
SELECT DISTINCT tdepart FROM teacher;(不同的单位)
查询student表的所有记录
SELECT * FROM student
查询score表中成绩在60-80之间的所有记录
SELECT * FROM score WHERE degree BETWEEN 60 AND 80
查询score表中成绩为30,66,10的记录
SELECT * FROM score WHERE score.degree = 30 OR score.degree = 66 OR score.degree = 10
SELECT * FROM score WHERE degree IN (30,66,10)
查询student表中'class5'班或性别为'female'的同学记录。
SELECT * FROM student WHERE class = 'class5' OR ssex = 'female'
以class降序查询student表中的数据
SELECT * FROM student ORDER BY class DESC
以cno升序,degree降序查询score表中的记录
SELECT * FROM score ORDER BY cno ASC,degree DESC
查询“class5”班的学生人数
SELECT COUNT(*) FROM student WHERE class = 'class5'
查询score表中的最高分的学生学号和课程号
SELECT sno,cno FROM score WHERE degree = (SELECT MAX(degree) FROM score )
查询每门课的平均成绩,要按照课程进行分组,然后求每门课程的平均成绩。
SELECT course.cno,course.cname,AVG(degree) AS degree
FROM course
LEFT JOIN score ON
course.cno=score.cno
GROUP BY score.cno;\
查询score表中至少有5名学生选修的并以3开头的课程的平均分数。
SELECT AVG(degree) FROM score
WHERE cno LIKE '3%'
GROUP BY cno
HAVING COUNT(*)>=5
查询分数大于70,小于90的sno列
SELECT sno FROM score
WHERE degree BETWEEN 70 AND 90;
麻瓜之我要学sql,啦啦啦啦的更多相关文章
- [SQL]SQL语言入门级教材_跟我学SQL(六)
跟我学SQL:(一)数据查询 且不说你是否正在从事编程方面的工作或者不打算学习SQL,可事实上几乎每一位开发者最终都会遭遇它.你多半还用不着负责创建和维持某个,但你怎么着也该知道以下的一些有关的SQL ...
- 轻松学SQL Server数据库
轻松学SQL Server数据库pdf 下载地址:网盘下载 目录: 第1章 数据库与SQL Server 2008 11.1 数据库基础 21.1.1 数据库的概念 21.1.2 数据库模型 2 ...
- 看漫画就能学SQL,简直太cool了
对于SQl, 很多人学不会的原因是从一开始就没明白,学这东西能干啥,学会了能有什么用.甚至有些人不知道'SQL'应该怎么读,以至于一开始兴致勃勃,但是学到一半放弃了. 注意:'sql'真的不能读成'烧 ...
- 30 分钟快快乐乐学 SQL Performance Tuning
转自:http://www.cnblogs.com/WizardWu/archive/2008/10/27/1320055.html 有些程序员在撰写数据库应用程序时,常专注于 OOP 及各种 fra ...
- 菜鸟学sql,Oracle数据库结构比较
转载自:http://www.cnblogs.com/tianqing/archive/2008/06/25/1229419.html 做oracle下数据库结构比较,比较具体详细差异,例如:2个库具 ...
- 看到当年自己学SQL Server 的笔记
数据库 数据量DataBase,不同类型的数据应该放到不同的数据库中, .便于对各个数据类别进行个性管理 .避免命名冲突 .安全性更高; table(表):数据库中的关系指的就是表; 一张表就是一个类 ...
- java 标签库(核心,xml,sql ,国际化,函数)
java标签库分分为上述几种,一般经常使用的是核心和函数,接下来会分别讲解这几种,和常见的用法. 一般标签库会和el表达式一起使用,所以在学习标签库前最后也学习下el表达式的使用. 导入后展开 可以从 ...
- SQL基础之XML
1.XML数据类型 在SQL Server中xml数据类型可以用来保存xml文档,这个文档即可以是完整的xml文档和xml片段,这样开发者就可以像使用int数据类型一样来使用xml数据类型.不过xml ...
- SQL入门经典(一)之简介
今天是我第一天开通博客,也是我的第一篇博客.以后为大家带来第一篇关于学习技术性文章,这段时间会为大家带来是SQL入门学习.希望大家坚持读下去,因为学历有限.我也是初学者.语言表达能力不好和知识点不足, ...
随机推荐
- java MD5比较文件内容
最近用到,记下来…… 功能: 对指定目录下的所有TXT文件,通过MD5比较内容,删除掉重复的文件.文件的扩展可以修改成.docx..doc..jpg..png,或者其它类型,根据需求灵活修改. pub ...
- 快速上手使用Maven
maven的相关命令 mvn archetype:create :创建 Maven 项目 mvn compile :编译源代码(编译到target文件夹中) mvn test-compile :编译测 ...
- JavaScript OOP(三):prototype原型对象(即构造函数的prototype属性)
通过构造函数生成的实例化对象,无法共享属性或方法(即每个实例化对象上都有构造函数中的属性和方法):造成了一定的资源浪费 function Obj(name,age){ this.name=name; ...
- [C#]使用Process的StandardInput与StandardOutput写入读取控制台数据
本文为原创文章.源代码为原创代码,如转载/复制,请在网页/代码处明显位置标明原文名称.作者及网址,谢谢! 开发工具:VS2017 语言:C# DotNet版本:.Net FrameWork 4.0及以 ...
- 【liferay】1、使用alloy-UI发送ajax请求
1.首先liferay要发送ajax请求,那么就需要在jsp中定义resourceURL <portlet:resourceURL var="workDeal" id=&qu ...
- 美杂志初次取得答应走进google奥秘研讨所Google X
Google X作为google最奥秘的研讨部分.开发过google眼镜.无人驾驶轿车等多项创新项目.至今为止.Google X从未答应媒体进入採訪.但近日,据日本GIGAZINE站点报导,美国杂志& ...
- iOS开发证书都显示“此证书的签发者无效”,更新WWDR Certificate证书后还是显示无效
1.首先iOS开发证书显示"此证书的签发者无效".是因为WWDR Certificate证书过期导致的,须要更新WWDR Certificate证书! 1)下载最新WWDR Cer ...
- leetcode第一刷_Populating Next Right Pointers in Each Node II
很自然的推广,假设去掉全然二叉树的条件呢?由于这个条件不是关键,因此不会影响整体的思路.做法依旧是每次找到一层的起点,然后一层一层的走. 假设是全然二叉树的话,每层的起点就是上一层起点的左孩子,兄弟之 ...
- nat的翻译类型(2)--动态nat
目的:在1.1 1.2 1.3 三台内网的服务器访问外网的服务器(202.1.1.2)时,将内网ip转换为外网ip. 1.设置内网三台服务器的Ip ,网关,以及外网服务器的ip网关 分别为:192.1 ...
- maven安装配置及使用maven创建一个web项目
今天开始学习使用maven,现在把学习过程中的资料整理在这边. 第一部分.maven安装和配置. http://jingyan.baidu.com/article/295430f136e8e00c7e ...