Mysql 基础 高级查询
在西面内容中 car 和 nation 都表示 表名
1.无论 高级查询还是简单查询 都用 select.. from..语句 from 后面 加表名 可以使一张表也可以是多张表 表和表之间用逗号隔开
2. 简单查询和高级查询 不是 独立的 高级查询里面 同样可以用到 简单查询
3.简单查询与复杂查询的联系: 简单查询里面 后面的条件 未知时 需要用另一个 查询来代替 这样就变成了高级查询
4.链接查询 和 联合查询的区别:1. 链接查询 连接两张以上的表 输出时 显示在一张表里 ; 联合查询 以另一张表为条件 只输出 一张表的内容
联合查询时 注意 相关查询 : 子查询 和父查询 的关系 父查询 的条件 时子查询 子查询的条件同样引用子查询
2.相同点 关联在一起时 表示必须建立外键关系;
一.链接查询
1.链接查询 对结果集列的扩展
select*from 表名
查询多张表 查询结果 在一张表中显示
select * from info,nation #形成笛卡尔积 缺点 查询速度慢(产生大量冗余数据)
select * from 表1名, 表1名where 表1名.列名=表2名.列名
select * from info,nation where info.code=nation.code
select info.code, info. name, birthday from info,nation where info.code=nation.code
因为 birthday 在两张表里 没有重复 所以可以直接写 (比如简单查询里面)
select * from info join nation on info.nation=nation.code
二.联合查询 union
select 列名名
union
select 列名名
三. 子查询(查询效率高 重要)
父查询 : 外层查询
子查询: 里层查询
子查询 查询出的结果作为父查询的条件
- 无关子查询
子查询和父查询没有关系 子查询可以单独执行
父查询:select *from info where nation=()
子查询: select code from nation where name=’汉族’
select *from info where nation=(select code from nation where name=’汉族’)
②.查询系列名为‘宝马5系’的所有汽车信息
select * from car where brand=(select brand_code from brand where brand_name='宝马5系')
- 相关子查询
子查询在执行的时候 和父查询有关系 子查询不能单独执行
1.查询汽车表中 油耗小于平均油耗的所有汽车信息
父查询: 汽车的信息: select * from car where oil<平均油耗
子查询: 平均油耗; select avg(oil) from car where brand =该系列
select * from car as a where oil<(select avg(oil) from car as b where b.brand=a.brand)
Mysql 基础 高级查询的更多相关文章
- 2-14-1 MySQL基础语句,查询语句
一. SQL概述 结构化查询语言(Structured Query Language)简称SQL 1. 它是一种特殊目的的编程语言 2. 它还是一种数据库查询和程序设计语言 (用于存取数据以及查询.更 ...
- MYSQL SQL高级查询技巧
1.UNION,EXCEPT,INTERSECT运算符 A,UNION 运算符 UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表. ...
- MySQL的高级查询
高级查询 1.连接查询(对列的扩展) 第一种形式select * from Info,Nation #会形成笛卡尔积 select * from Info,Nation where Info.Nati ...
- MYSQL之高级查询
PHP高级查询 分组查询.联合查询.连接查询.子查询 版权声明:本文为博主原创文章,未经博主允许不得转载.
- python数据库-MySQL数据库高级查询操作(51)
一.什么是关系? 1.分析:有这么一组数据关于学生的数据 学号.姓名.年龄.住址.成绩.学科.学科(语文.数学.英语) 我们应该怎么去设计储存这些数据呢? 2.先考虑第一范式:列不可在拆分原则 这里面 ...
- MYSQL基础02(查询)
查询是很大的一块,所以这里我只会写mysql的特点,就我目前使用的情况,MYSQL对标准SQL是比较支持,如果是新手的话,建议去w3school 学习标准SQL. 1.DUAL DUAL是一个虚拟表, ...
- mysql基础之查询缓存、存储引擎
一.查询缓存 "查询缓存",就是将查询的结果缓存下载,如果查询语句完全相同,则直接返回缓存中的结果. 如果应用程序在某个场景中,需要经常执行大量的相同的查询,而且查询出的数据不会经 ...
- 关于Mysql的高级查询的操作
前言:作为一名后端的程序员操作数据库的能力是我们基本的技能,而连表查询是我们的这个技能的关键点所在.注意这里顾明思义是对数据的查询的操作 (一).联合查询(关键字union/union all) 什么 ...
- MySQL 数据库 高级查询
1.连接查询select * from Info,Nation #笛卡尔积select * from Info,Nation where Info.Nation=Nation.Code join on ...
随机推荐
- [译]git clean
git clean命令用来从你的工作目录中删除所有没有tracked过的文件. git clean经常和git reset --hard一起结合使用. 记住reset只影响被track过的文件, 所以 ...
- R笔记1
gsub format > measurements<-c('3.95*3.99*2.43mm','3*3*5mm','2*2*2mm') > measurements [1] &q ...
- 【转】GATK使用方法详解(包含bwa使用)
一.使用GATK前须知事项: (1)对GATK的测试主要使用的是人类全基因组和外显子组的测序数据,而且全部是基于illumina数据格式,目前还没有提供其他格式文件(如Ion Torrent)或者实验 ...
- Java并发包源码学习之AQS框架(一)概述
AQS其实就是java.util.concurrent.locks.AbstractQueuedSynchronizer这个类. 阅读Java的并发包源码你会发现这个类是整个java.util.con ...
- springmvc 数据精准绑定
因为使用dwz 的lookup功能,回调的值通过name以 xxx.xxValue 来自动得到,而我还有些表单数据的name是没有前缀的, 到springmvc后台绑定的的话默认的绑定是有问题的.这是 ...
- python 编码 UnicodeDecodeError
将一个py脚本从Centos转到win运行,出错如下: UnicodeDecodeError: 'gbk' codec can't decode byte 0xff in position 0: il ...
- HDU 3743 Frosh Week(归并排序求逆序对)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3743 题目意思就是给你一个长为n的序列,让你求逆序对.我用的是归并排序来求的.归并排序有一个合并的过程 ...
- 将kindeditor在线编辑器制作成smarty插件
在web开发中,在线编辑器是经常要用到的功能模块,虽说配置在线编辑器没有多大难度,但是每一次编写重复的代码,总是让人感觉不爽. 本篇,就来讲解一下,如何将kindeditor制作成smarty的一个自 ...
- 2016-03-12 Leanning Plan
1,Python 2,Java 3,Html+Css 4,PHP 5,Crawl 6,WetChat Platform
- @ModelAttribute运用详解
@ModelAttribute使用详解 1.@ModelAttribute注释方法 例子(1),(2),(3)类似,被@ModelAttribute注释的方法会在此controller每个 ...