S1数据库中最重要的是查询,对于查询要有一个好的理解模型是很关键的:

1. 每一个查询都会返回一个结果集,这个结果集可能是一个值,一个字段或者一个记录,甚至可能是一个表

返回一个值

  1. SELECT * FROM score WHERE cno='3-105'
  2. AND degree>(SELECT degree FROM score WHERE sno=''AND cno='3-105');

2. 每一个结果集都可以作为另一个查询语句的对象

3. 表中的属性(字段)可以看作是一个变量,可以参与运算

  1. -- 38,查询Student表中每个学生的姓名和年龄。
  2. SELECT sname 姓名,YEAR(NOW())-YEAR(sbirthday) 年龄 FROM student;

4. 查询的模式 一: 把所有的有关系的表不出现重复数据的连接在一起然后筛选符合条件的结果集

  1. -- 45,查询所有选修"计算机导论"课程的"男"同学的成绩表。
  2. SELECT * FROM course JOIN score ON course.cno=score.cno
  3. JOIN student ON student.sno=score.sno
  4. WHERE cname='计算机导论' AND ssex='男';

5. 查询的模式 二: 利用条件把有关的表连接起来,通过底层的查询,层层查询,直到查询到符合条件的,这是一种嵌套查询

  1. -- 24,查询选修某课程的同学人数多于5人的教师姓名
  2. SELECT tname FROM teacher WHERE tno IN
  3. (SELECT tno FROM course WHERE cno IN
  4. (SELECT cno FROM score GROUP BY cno HAVING COUNT(*)>5));

6. 尽量用IN和NOT IN 避免出现错误

7. 只有在子查询用到父查询的条件的时候,才用相关子查询

8. 分组查询只有在显示所分组的字段的时候才有意义,要不没有意义

9. 每一条查询语句都有自己的执行顺序,有的时候执行顺序的不同, 可能造成查询结果的偏差

数据库MySql阶段总结的更多相关文章

  1. 第一章 初识数据库Mysql

    初识数据库Mysql(my)   在企业中 percona: 一.数据库基础知识 Mysql是一个开放源代码的数据库管理系统(DBMS),它是由Mysql AB公司开发.发布并支持的.Mysql是一个 ...

  2. 数据库MySQL——初识

    认识数据库—MySQL 楔子 假设现在你已经是某大型互联网公司的高级程序员,让你写一个火车票购票系统,来hold住十一期间全国的购票需求,你怎么写? 由于在同一时段抢票的人数太多,所以你的程序不可能写 ...

  3. MySql阶段案例

    MySql阶段案例 案例一 涉及的知识点:数据库和表的基本操作,添加数据,多表操作 题目 使用sql语句请按照要求完成如下操作: (1)创建一个名称为test的数据库. (2)在test数据库中创建两 ...

  4. 数据库 MySQL 之 基本概念

    数据库 MySQL 之 基本概念 浏览目录 概述 数据库的特点 数据库的分类 选择MySQL的理由 & MariaDB 介绍 下载及安装 SQL介绍 一.概述 1.数据(data) 存储在表中 ...

  5. 数据库MySQL学习笔记高级篇

    数据库MySQL学习笔记高级篇 写在前面 学习链接:数据库 MySQL 视频教程全集 1. mysql的架构介绍 mysql简介 概述 高级Mysql 完整的mysql优化需要很深的功底,大公司甚至有 ...

  6. MYSQL添加新用户 MYSQL为用户创建数据库 MYSQL为新用户分配权限

    1.新建用户 //登录MYSQL @>mysql -u root -p @>密码 //创建用户 mysql> insert into mysql.user(Host,User,Pas ...

  7. Robot Framework-DatabaseLibrary数据库(MySql)

    Robot Framework-Mac版本安装 Robot Framework-Windows版本安装 Robot Framework-工具简介及入门使用 Robot Framework-Databa ...

  8. paip.导入数据英文音标到数据库mysql为空的问题之道解决原理

    paip.导入数据英文音标到数据库mysql为空的问题之道解决原理 #---原因:mysql 导入工具的bug #---解决:使用双引号不个音标括起来. 作者 老哇的爪子 Attilax 艾龙,  E ...

  9. paip.解决 数据库mysql增加列 字段很慢添加字段很慢

    paip.解决 数据库mysql增加列 字段很慢添加字段很慢 #环境如下: mysql5.6    数据仅仅3w alter table xxx add column yyy int default ...

随机推荐

  1. poj 1753

    翻转棋,注意是翻转周围四个的,不是整行列的  汗-_-! 哥的代码风还是不错的 二进制储存状态 Sample Input bwwb bbwb bwwb bwww Sample Output 4 #in ...

  2. CPU的性能对比

    笔记本CPU之前的性能对比 下面的分数都是根据PerformanceTest测试的出来的结果,现在的笔记本CPU有很多种,你在购买笔记本的时候只看到CPU的型号,而且现在的CPU型号太多而且命名方式也 ...

  3. kmp算法详解

    转自:http://blog.csdn.net/ddupd/article/details/19899263 KMP算法详解 KMP算法简介: KMP算法是一种高效的字符串匹配算法,关于字符串匹配最简 ...

  4. 电赛初探(二)——语音采集回放系统

    一.系统结构 1.基本要求 (1)话音/功率放大器增益均可调: (2)带通滤波器:通带为300Hz-3.4kHz : (3)ADC:采样频率f s=8kHz,字长不小于8位: (4)语音存储时间≥10 ...

  5. Loadrunner关联

    学习LoadRunner之关联(二) Lr学习之关联-随机删除一行数据和全部删除数据 录制一个系统,我录制的是一个交通方面的系统,登陆到系统里面,查询车牌颜色,将其中一条数据删除. "Nam ...

  6. packge-info.java

    packge-info.java是一个Java文件,可以添加到任何的Java源码包中.packge-info.java的目标是提供一个包级的文档说明或者是包级的注释. packge-info.java ...

  7. jquery优化02

    缓存变量:DOM遍历是昂贵的,所以尽量将会重用的元素缓存. $element = $('#element'); h = $element.height(); //缓存 $element.css('he ...

  8. A jubeat

    Time Limit:1000MS  Memory Limit:65535K 题型: 编程题   语言: 无限制 描述 jubeat是一款由日本KONAMI倾心打造的体感音乐游戏,该作在日韩.香港等地 ...

  9. [LintCode] Trapping rain water II

    Given n x m non-negative integers representing an elevation map 2d where the area of each cell is 1  ...

  10. 暴力枚举 UVA 725 Division

    题目传送门 /* 暴力:对于每一个数都判断,是否数字全都使用过一遍 */ #include <cstdio> #include <iostream> #include < ...