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. oracle的启动过程(各个模式启动)

    启动模式详解 1.NoMount 模式(启动实例不加载数据库) 命令:startup nomount 讲解:这种启动模式只会创建实例,并不加载数据库,Oracle仅为实例创建各种内存结构和服务进程,不 ...

  2. EAS使用中FineUI的配置

    <?xml version="1.0" encoding="utf-8"?> <configuration> <configSec ...

  3. 计算字符串相似度算法——Levenshtein

    转自:http://wdhdmx.iteye.com/blog/1343856 0.这个算法实现起来很简单 1.百度百科介绍: Levenshtein 距离,又称编辑距离,指的是两个字符串之间,由一个 ...

  4. Struts表单格局;theme三个属性值:simple,xhtml,css_xhtml

    转自:http://www.educity.cn/wenda/7156.html 解决Struts2 Form表单自己布局之前先看看 theme 属性, theme属性提供 三个属性值:simple, ...

  5. WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping

    我百度到的答案,原文请点击 错误信息: WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping.请添加一个名为 jquer ...

  6. 转:EasyHook远程代码注入

    EasyHook远程代码注入 最近一段时间由于使用MinHook的API挂钩不稳定,经常因为挂钩地址错误而导致宿主进程崩溃.听同事介绍了一款智能强大的挂钩引擎EasyHook.它比微软的detours ...

  7. asp.net 未能写入输出文件--“拒绝访问”的解决办法

      概述 将网部署在IIS 7 上,访问本地磁盘路径的时候,提示"**文件拒绝访问".   解决办法   将需要访问的文件夹赋于IIS_IUSRS完全控制的权限即可,不用添加NET ...

  8. JavaScript初学者应注意的七个细节

    每种语言都有它特别的地方,对于JavaScript来说,使用var就可以声明任意类型的变量,这门脚本语言看起来很简单,然而想要写出优雅的代码却是需要不断积累经验的.本文利列举了JavaScript初学 ...

  9. js对象数组按属性快速排序

    前一篇<关于selector性能比赛>中提到,目测觉得在$("div,p,a")这样有逗号时,sizzle耗时异常(600多个元素,花了200ms),说是它可能没有优化 ...

  10. windows raid mode重新安装系统(win10)

    常规安装模式: STEP 1 进入bios 将高级设置中,引导模式设置为传统(旧模式)模式,一般存在legacy (旧模式),uefi with csm ,uefi without csm 三个模式, ...