发如雪 - 周杰伦

作词:方文山

作曲:周杰伦

编曲:林迈可

狼牙月 伊人憔悴

我举杯 饮尽了风雪

是谁打翻前世柜 惹尘埃是非

缘字诀 几番轮回

你锁眉 哭红颜唤不回

纵然青史已经成灰 我爱不灭

繁华如三千东流水

我只取一瓢爱了解

只恋你化身的蝶

你发如雪 凄美了离别

我焚香感动了谁

邀明月 让回忆皎洁

爱在月光下完美

你发如雪 纷飞了眼泪

我等待苍老了谁

红尘醉 微醺的岁月

我用无悔 刻永世爱你的碑

你发如雪 凄美了离别

我焚香感动了谁

邀明月 让回忆皎洁

爱在月光下完美

你发如雪 纷飞了眼泪

我等待苍老了谁

红尘醉 微醺的岁月

狼牙月 伊人憔悴

我举杯 饮尽了风雪

是谁打翻前世柜 惹尘埃是非

缘字诀 几番轮回

你锁眉 哭红颜唤不回

纵然青史已经成灰 我爱不灭

繁华如三千东流水

我只取一瓢爱了解

只恋你化身的蝶

你发如雪 凄美了离别

我焚香感动了谁

邀明月 让回忆皎洁

爱在月光下完美

你发如雪 纷飞了眼泪

我等待苍老了谁

红尘醉 微醺的岁月

我用无悔 刻永世爱你的碑

你发如雪 凄美了离别

我焚香感动了谁

邀明月 让回忆皎洁

爱在月光下完美

你发如雪 纷飞了眼泪

我等待苍老了谁

红尘醉 微醺的岁月

你发如雪 凄美了离别

我焚香感动了谁

邀明月 让回忆皎洁

爱在月光下完美

你发如雪 纷飞了眼泪

我等待苍老了谁

红尘醉 微醺的岁月

我用无悔 刻永世爱你的碑

啦儿啦儿啦

啦儿啦 啦儿啦 啦儿啦儿啊

铜镜映无邪 扎马尾

你若撒野 今生我把酒奉陪

啦儿啦 啦儿啦 啦儿啦儿啦

啦儿啦 啦儿啦 啦儿啦儿啊

铜镜映无邪 扎马尾

你若撒野 今生我把酒奉陪


/*学生表:student [学号,学生姓名,出生年月,性别]
成绩表:score [学号,课程号,成绩]
课程表:course [课程号,课程名称,教师号]
教师表:teacher [教师号,教师姓名)*/
-- ----------------------------
-- Table structure for teacher
-- ----------------------------
DROP TABLE IF EXISTS `teacher`;
CREATE TABLE `teacher`  (`t_id` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,`t_name` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '',PRIMARY KEY (`t_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;-- ----------------------------
-- Records of teacher
-- ----------------------------
INSERT INTO `teacher` VALUES ('01', '数学老师-杰斯');
INSERT INTO `teacher` VALUES ('02', '语文老师-盲僧');
INSERT INTO `teacher` VALUES ('03', '英语老师-菲欧娜');-- ----------------------------
-- Table structure for student
-- ----------------------------
DROP TABLE IF EXISTS `student`;
CREATE TABLE `student`  (`s_id` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,`s_name` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '',`s_birth` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '',`s_sex` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '',PRIMARY KEY (`s_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;-- ----------------------------
-- Records of student
-- ----------------------------
INSERT INTO `student` VALUES ('01', '流浪法师-瑞兹', '1990-01-01', '男');
INSERT INTO `student` VALUES ('02', '探险家-EZ', '1990-12-21', '男');
INSERT INTO `student` VALUES ('03', '疾风剑豪-亚瑟', '1990-05-20', '男');
INSERT INTO `student` VALUES ('04', '迅捷斥候-提莫', '1990-08-06', '男');
INSERT INTO `student` VALUES ('05', '黑暗之女-安妮', '1991-12-01', '女');
INSERT INTO `student` VALUES ('06', '战争女神-希维尔', '1992-03-01', '女');
INSERT INTO `student` VALUES ('07', '光辉女郎-拉克丝', '1989-07-01', '女');
INSERT INTO `student` VALUES ('08', '放逐之刃-锐雯', '1990-01-20', '女');-- ----------------------------
-- Table structure for score
-- ----------------------------
DROP TABLE IF EXISTS `score`;
CREATE TABLE `score`  (`s_id` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,`c_id` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,`s_score` int(0) NULL DEFAULT NULL,PRIMARY KEY (`s_id`, `c_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;-- ----------------------------
-- Records of score
-- ----------------------------
INSERT INTO `score` VALUES ('01', '01', 80);
INSERT INTO `score` VALUES ('01', '02', 90);
INSERT INTO `score` VALUES ('01', '03', 99);
INSERT INTO `score` VALUES ('02', '01', 70);
INSERT INTO `score` VALUES ('02', '02', 60);
INSERT INTO `score` VALUES ('02', '03', 80);
INSERT INTO `score` VALUES ('03', '01', 80);
INSERT INTO `score` VALUES ('03', '02', 80);
INSERT INTO `score` VALUES ('03', '03', 80);
INSERT INTO `score` VALUES ('04', '01', 50);
INSERT INTO `score` VALUES ('04', '02', 30);
INSERT INTO `score` VALUES ('04', '03', 20);
INSERT INTO `score` VALUES ('05', '01', 76);
INSERT INTO `score` VALUES ('05', '02', 87);
INSERT INTO `score` VALUES ('06', '01', 31);
INSERT INTO `score` VALUES ('06', '03', 34);
INSERT INTO `score` VALUES ('07', '02', 89);
INSERT INTO `score` VALUES ('07', '03', 98);-- ----------------------------
-- Table structure for course
-- ----------------------------
DROP TABLE IF EXISTS `course`;
CREATE TABLE `course`  (`c_id` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,`c_name` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '',`t_id` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,PRIMARY KEY (`c_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;-- ----------------------------
-- Records of course
-- ----------------------------
INSERT INTO `course` VALUES ('01', '语文', '02');
INSERT INTO `course` VALUES ('02', '数学', '01');
INSERT INTO `course` VALUES ('03', '英语', '03');

-- 6道SQL面试题
-- 1、查询课程编号为“01”的课程比“02”的课程成绩高的所有学生的学号

-- 2、查询平均成绩大于60分的学生的学号和平均成绩

-- 3、查询所有学生的学号、姓名、选课数、总成绩

-- 4、查询姓“刘”的老师的个数

-- 5、查询没学过“数学老师-杰斯”老师课的学生的学号、姓名

-- 6、查询课程编号为“02”的总成绩

--各个表的数据情况
SELECT * from student;
select * from score;
SELECT * from course;
select * from teacher;
-- 先全数据关联一下看看
select * from student stu,score sc,course c,teacher t
where stu.s_id=sc.s_id and sc.c_id =c.c_id and c.t_id = t.t_id;
1.SELECT a.c_id from
(select * from score where c_id ='01') a,
(select * from score where c_id ='02') b
where a.s_id = b.s_id and a.s_score > b.s_score;2.SELECT score.s_id,avg(s_score) from score group by s_id HAVING  avg(s_score)>60;3.SELECT b.s_name,sum(s_score),count(c_id) from score a, student b where a.s_id = b.s_id group by a.s_id 4.select count(*) from teacher where t_name like '刘%'5.select * from student where s_id not in(
select DISTINCT(stu.s_id) from student stu,score sc,course c,teacher t
where stu.s_id=sc.s_id and sc.c_id =c.c_id and c.t_id = t.t_id and t.t_name != '数学老师-杰斯');6.select SUM(sc.s_score) from score sc where c_id = '02';
1、SQL语句完整结构:
SELECT...,...,...(存在聚合函数)
FROM...(LEFT / RIGHT)JOIN ...ON 多表的连接条件
(LEFT / RIGHT)JOIN ...ON
WHERE ...(WHERE子句不能使用聚合函数)
GROUP BY ...,...
HAVING (HAVING子句可以包含聚合函数的过滤条件也可以不包含)
ORDER BY ...,...(ASC / DESC)
LIMIT ...,...;2、SQL语句的执行顺序
FROM …,…-> ON -> (LEFT/RIGHT JOIN) -> WHERE -> GROUP BY -> HAVING -> SELECT -> DISTINCT->ORDER BY. -> LIMIT(1)from:从哪些表中筛选
(2)on:关联多表查询时,去除笛卡尔积
(3)where:从表中筛选的条件
(4)group by:分组依据
(5)having:在统计结果中再次筛选
(6)select: 展示哪些字段列表
(7)order by:排序
(8)limit:分页2.1 笛卡尔积产生的条件
1、省略了on的连接条件
2、所有表的所有行数据都相连
3、连接条件无效3、WHERE和HAVING的区别
HAVING
1、HAVING子句可以包含聚合函数的过滤条件也可以不包含,通常与GROUP BY连用。
2、HAVING先进行计算,然后再过滤。WHERE
1、WHERE子句不能使用聚合函数,可以与GROUP BY连用也可以不连用
2、WHERE是先进行约束,然后再进行计算。3.1、优化HAVING的处理速度
当HAVING的逻辑中有可以使用WHERE筛选,优先使用WHERE筛选,这样可以减少HAVING的过滤查询。4、ON和WHERE的区别
首先,内连接情况下,ON与WHERE子句是等效的。
外连接情况下有以下区别:
1、ON限制条件的发生时间比WHERE早。
2、ON在进行外部连接前,根据约束条件筛选数据。
3、WHERE在外部连接后,根据约束条件筛选数据。

发如雪SQL Based on practice(二)相关推荐

  1. SQL Based on practice

    -- sql joins Concept map -- 仅供学习交流,有不对的地方 欢迎指正 谢谢~ -- Only for learning and communication, if there ...

  2. SQL基础使用入门(二): DML语句和DCL语句

    SQL语句第二个类别--DML 语句 DML是数据操作语言的缩写,主要用来对数据表中数据记录实例对象进行操作,包括插入.删除.查找以及修改四大操作,这也是开发人员使用中最为频繁的操作. 1.插入记录 ...

  3. 用计算机弹发如雪,计算器弹音乐谱子

    计算器弹音乐谱子 计算器弹奏音乐大家知道,你想试试吗?下面小编为大家带来了计算器弹音乐需要的谱子,请看下面: <两只老虎> 1231 1231 345 345 565431 565431 ...

  4. 第二十三章 SQL函数 CAST(二)

    文章目录 第二十三章 SQL函数 CAST(二) 转换位值 示例 第二十三章 SQL函数 CAST(二) 转换位值 可以将expr值转换为BIT以返回0或1. 如果expr为1或任何其他非零数值,则返 ...

  5. SQL基础知识(二)

    SQL基础知识(二) 目录: 查找所有员工自入职以来的薪水涨幅情况 统计各个部门对应员工涨幅的次数总和 对所有员工的当前薪水按照salary进行按照1-N的排名 获取所有非manager员工当前的薪水 ...

  6. 第144章 SQL函数 TO_DATE(二)

    文章目录 第144章 SQL函数 TO_DATE(二) 一年中的某一天(DDD 格式) 儒略历日期(J格式) 示例 默认日期格式示例 指定日期格式示例 第144章 SQL函数 TO_DATE(二) 一 ...

  7. asp教程连接sql server数据库教程二种方法

    asp教程连接sql server数据库教程二种方法  ,sql server ole db连接方法:,本人链接sql2012已经成功,想可以帮助大家 本教程主要是讲了asp与mssql server ...

  8. 第九章 SQL查询数据库(二)

    文章目录 第九章 SQL查询数据库(二) 调用用户定义函数的查询 查询串行对象属性 查询集合 使用说明和限制 调用文本搜索的查询 伪字段 查询元数据 快速查询 查询和企业缓存协议Enterprise ...

  9. SQL学习笔记之二:QUOTENAME函数

    SQL学习笔记之二:QUOTENAME函数 --SQL学习笔记二 --函数QUOTENAME --功能:返回带有分隔符的Unicode 字符串,分隔符的加入可使输入的字符串成为有效的Microsoft ...

最新文章

  1. docker本地私有仓库搭建
  2. go context剖析之使用技巧
  3. 8.0 C++远征:对象数组
  4. python类中方法的执行顺序-浅谈Python的方法解析顺序(MRO)
  5. 重写equals方法时必须重写hashcode方法吗
  6. python sklearn.preprocessing.standardScaler 的transform和fit_transform方法
  7. 【Node】node编译(windows)
  8. 交换算法经常使用的两个数的值
  9. vscode标记_高效扩展工具让 VS Code 如虎添翼
  10. Java什么是重用_深度解析:java必须掌握的知识点——类的重用
  11. css/html目录
  12. 数据挖掘:模型选择——SVM
  13. 用mapreduce 处理气象数据集
  14. 狂神说Reids完结篇
  15. 文档对象模型(DOM)
  16. win10下如何解决VC++MSDEV.EXE的0xc0000142错误
  17. 太极root权限_太极框架免root版下载
  18. 卸载linux grub rescue,卸载linux后出现“grub rescue”,怎么处理?
  19. 共享单车来了,自行车道没了
  20. project-attact of panda virus

热门文章

  1. matlab实现疲劳驾驶实时监测
  2. form action表单提交
  3. (427)Java分支结构 循环结构
  4. 统计QQ聊天记录进阶版(分词+统计关键字出现的次数+根据词频制作词云)
  5. 下列哪项不属于以太网交换机的特点_下列关于以太网二层交换机特点的描述,正确的是( )...
  6. 信息系统监理师考试大纲
  7. 问题解决:记录一次Linux服务器根目录突然爆满
  8. 正则和常用的正则表达式
  9. MBTI 十六种性格全报告分析
  10. 阿里云关于阿帕奇Log4j2漏洞后续:为全球性高危漏洞,未及时共享信息