SQL 结构化查询语言。
MySQL 数据库管理系统。
SQL Server 微软的数据库管理系统。
Oracle(甲骨文) 数据管理系统。
show databases; 显示数据库管理系统中所有数据库
create database 数据库名; 创建数据库。
drop database 数据库名; 删除数据库。
use 数据库名; 使用指定数据库。
在创建数据库的过程中可以指定编码语言和校对规则。
ISO 8859-1
gbk gb2312 都是简体中文编码。
big5 繁体编码集。
utf8 比较全面的一个编码集。支持大多数编码格式。
了解if exists 以及 if not exists 从句的含义。
了解编码集 以及 校对规则的含义。
掌握使用navicat 创建数据库的方式。
3月14日
了解:
alter 修改 其实对数据库我们修改的只有编码集和校对 alert 警告
timestamp 时间戳
掌握:
show tables;
yyyy-mm-dd hh:mm:ss
yyyy 年份 mm 月份 dd 日期
hh 小时 mm 分 ss 秒
3月19日
课堂目标:
完成创建简单的 table 以及 数据的插入处理。
创建表: create table 表名(列名 类型,……);
创建表的最简单的语法。
desc 表名
查看表的结构。
select * from 表名;
查询表中的所有的内容。
在任意的数据表中,
每一个有效行都描述了一个完整的对象。
insert into 表名 values(值……);
select name from stuinfo;
select age from stuinfo;
select name,age from stuinfo;
select * from stuinfo;
4月2日
1、查询 xs_kc表中 成绩大于75的同学的 学号 和成绩?
成绩>75 条件 where 成绩>75
查询的 是不是 学号 和 成绩 满足我要求的条件。
select 学号,成绩 from xs_kc where 成绩>75
2、我想找到成绩最高的同学的学号?
select 学号 from xs_kc where 成绩= max(成绩);
本条语句的错误是因为 max函数的使用语法不对
正确的写法为:
select 学号 from xs_kc where 成绩=
(select MAX(成绩) from xs_kc)
练习:查询到成绩最低的同学的学号 ?
3、我想查询一下成绩在平均分以上的同学的学号和成绩?
条件: 成绩在平均分以上。
查询结果为:学号、成绩。
聚合函数: max() min() avg() count()(此函数在所有的管理系统的登录过程中必用!)
select 学号,成绩 from xs_kc where 成绩>
(select avg(成绩) from xs_kc)
4、我想查询一下 课程编号为 101的 分数 大于平均分的 同学的 学号和成绩
5、between and
我想查询一下成绩 大于 60 小于 70的学号和成绩.
select 学号,成绩 from xs_kc where 成绩>60 and 成绩<70
select 学号,成绩 from xs_kc where 成绩 between 60 and 70
6、SQL 查询语句的书写的规律。
结果:
条件:
7、我想查询成绩最高的同学的姓名和分数?
结果:xs表中姓名 xs_kc中的分数
中期结果 : 成绩最高的同学的学号
条件: 成绩最高
查询的结果来自几张表?
目前是两张,xs.姓名 xs_kc.分数
8、笛卡尔积 n*m
9、查询 最高成绩的同学的姓名,成绩
select 姓名,max(xs_kc.`成绩`) from xs,xs_kc where xs.学号=
(
SELECT 学号 from xs_kc where `成绩`=
(select MAX(成绩) from xs_kc)
)
10、简单的介绍count 函数的使用
count(主键名) 如果没有主键 再使用count(*) 进行查询
查询一下学号为081102 姓名为 王林的同学是否存在
select COUNT(学号) from xs WHERE
学号=‘081102‘ and 姓名=‘王林‘
2018年4月4日
1、查询XS表中各个同学的姓名、专业名、总学分。
2、查询XS表中计算机系同学的学号、姓名、和总学分,结果中各列的标题分别指定为
number、name、mark。
select 姓名 as name,学号 as number ,总学分 as mark from xs
where 专业名=‘计算机‘
条件查询 以及 列名的显示
3、查询XS表中计算机系各同学的学号,姓名和总学分,对其总学分按照以下规则进行替换,
若总学分为空 替换为 尚未选课
总学分小于50,替换为不合格
总学分在50和52之间替换为合格
大于52 替换为优秀。
列标题替换为 等级。
select 学号,姓名,
CASE
when 总学分 is NULL then ‘尚未选课‘
WHEN 总学分 <50 then ‘不合格‘
WHEN 总学分 >=50 and 总学分<=52 then ‘合格‘
WHEN 总学分 >52 then ‘优秀‘
END AS 等级
from xs
where `专业名`=‘计算机‘
4、按120 分计算成绩,显示 xs_kc表中学号为081101的学生课程信息
结果:课程信息
条件:学号为081101
SELECT 学号,课程号,FLOOR(`成绩`*1.2)
as 成绩,学分 from