mysql查询操作1
##1、在已有的表中插入一行记录
insert into tb_name values("",""...);
##2、查询语句的框架和用法
select 字段名
from 表名
where 查询条件
group by 字段名
having 条件
order by [ASC|DESC]
limit [距离第一行的偏移量|返回的行数]
##as表示给字段名起别名
##3、找出比公司平均薪水高的员工的姓名和工资(子查询,子查询语句与条件里面)
第一步:找出公司的平均薪水
select avg(sql) from emp;
第二部:找出薪水大于平均薪水的员工的信息
select ename,sal from emp where sal>(select avg(sql) from emp);
##4、找出每个部门的平均薪水,并且要求显示平均薪水的薪水等级。(子查询,子查询语句在from里面)
##from后面,将查询结果当临时表
第一步:找出每个部门的平均薪水
select deptno,avg(sal) as avgsal
from emp
group by
deptno;
第二步:将上面的查询结果当做临时表t,t表和salgrade s表进行
连接。
select
t.deptno,t.avgsal,s.grade
from
(select deptno,avg(sal) as avgsal
from emp
group by
deptno)t ##from后面只能跟表
join
salgrade s ##字段 新创建的临时表
on ##on 的用法??
t.avgsal between s.losal and s.hisal;
说明:on是用于多表连接查询的,一般是join on ,左右连接或内连接
SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
INNER JOIN Orders
ON Persons.Id_P=Orders.Id_P
ORDER BY Persons.LastName
##聚合函数不可以在where后面??为什么?(百度一下)
##where后面接查询条件,而select后面才是接聚合函数的,主要用于对条件进行计算;
##编译器最先执行from找表,再根据where找条件,再根据select找具体内容。
##5、distinct 去除重复记录,它在字段名前面
select distinct job from emp;
##对于job这一列的字段,重复信息去掉显示,并未修改表
select distinct deptno,job from emp;
##对于此表部门编号、职位组成的行不能重复
##distinct前面不能出现字段
select count(distinct job) from emp;
6、分组查询
1).分组查询涉及的两个子句是
-group by
-having
2.group by
2.1)
order by##[表示通过哪个或哪些字段进行排序]
group by##[表示通过哪个或哪些字段进行分组]
2.2例子:找出每个工作岗位的最高薪水【先分组,在用max】
select
max(sal) ##第三步执行
from
emp ##第一步执行
group by
job; ##第二步执行
mysql查询操作1的更多相关文章
- MySQL 查询操作
目录 基本语法 查询常量 查看表达式 查询函数 查询指定字段 查询所有列 列别名 表别名 条件查询 条件查询运算符 逻辑查询运算符 排序与分页 排序查询(order by) 排序方式 limit 分组 ...
- MySQL查询操作——2
-----------查询操作--------------------------- 查询表中的所有字段SELECT * FROM employees; 查询常量值SELECT 100;SELECT ...
- MYSQL查询操作 详细
学习目标 1 掌握select查询所有字段.指定字段的数据 2 掌握消除重复行命令distinct 3 掌握as给字段.表起别名 4 掌握条件查询where后跟比较运算符.逻辑运算符的用法 5 掌握条 ...
- mysql查询操作之单表查询、多表查询、子查询
一.单表查询 单表查询的完整语法: .完整语法(语法级别关键字的排列顺序如下) select distinct 字段1,字段2,字段3,... from 库名.表名 where 约束条件 group ...
- MySQL查询操作
查询执行路径中的组件:查询缓存.解析器.预处理器.优化器.查询执行引擎.存储引擎SELECT语句的执行流程: FROM Clause --> WHERE Clause --> GROUP ...
- MySQL查询操作select
查找记录 SELECT select_expr [,select_expr ...] [ FROM table_references(表的参照) [WHERE where_condition](条件) ...
- C#参数化执行SQL语句,防止漏洞攻击本文以MySql为例【20151108非查询操作】
为什么要参数化执行SQL语句呢? 一个作用就是可以防止用户注入漏洞. 简单举个列子吧. 比如账号密码登入,如果不用参数, 写的简单点吧,就写从数据库查找到id和pw与用户输入一样的数据吧 sql:se ...
- MySQL(三) 数据库表的查询操作【重要】
序言 1.MySQL表操作(创建表,查询表结构,更改表字段等), 2.MySQL的数据类型(CHAR.VARCHAR.BLOB,等), 本节比较重要,对数据表数据进行查询操作,其中可能大家不熟悉的就对 ...
- MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
随机推荐
- Java-06-动手动脑
1.为什么子类的构造方法在运行之前,必须调用父类的构造方法?能不能反过来?为什么不能反过来? 因为子类继承于父类,子类中有父类的对象,父类的构造方法初始化后,子类才能运行自己的构造方法 不能放过来,继 ...
- CodeForce 832A Sasha and Sticks
A. Sasha and Sticks time limit per test2 seconds memory limit per test256 megabytes inputstandard in ...
- ip相关问题解答
用路由器上网时电脑的设置: ===================== 路由器如何设置另外讨论,现只讲电脑的设置.在Windows XP下: 1.确定桌面上有没有“网上邻居”图标,如果没有,在桌面空白 ...
- kubernetes实战(二十):k8s一键部署高可用Prometheus并实现邮件告警
1.基本概念 本次部署使用的是CoreOS的prometheus-operator. 本次部署包含监控etcd集群. 本次部署适用于二进制和kubeadm安装方式. 本次部署适用于k8s v1.10版 ...
- SpringMVC 问题 org.springframework.beans.factory.BeanDefinitionStoreException
HTTP Status 500 – Internal Server Error Type Exception Report Message Servlet.init() for servlet [sp ...
- 使用Spring配置动态数据源实现读写分离
最近搭建的一个项目需要实现数据源的读写分离,在这里将代码进行分享,以供参考.关键词:DataSource .AbstractRoutingDataSource.AOP 首先是配置数据源 <!-- ...
- dedecms调用副栏目文章怎么操作
最近ytkah的网站进行改版,添加了一些新栏目,做更精准的着陆页,有些文章比较简短并且很早以前就发布过了,如果再添加这样的文档就有点重复了,于是就想着用文章副栏目的属性,可却调不出来,怎么办?查找官方 ...
- postman 安装,对elasticsearch进行请求
1 使用postman对elasticsearch进行测试 :下载插件: https://www.getpostman.com/apps ,下载时exe文件,双击自动安装,首次打开注册.下面就可以使 ...
- [py]flask从0到1-模板/增删改查
flask知识点 1.后端渲染html到前端 render_template 2.后端获取前端数据 request.args.get 3.前端获取后端数据 模板 4.警示消息 flash {{ get ...
- Elasticsearch Java API—多条件查询(must)
多条件设置 //多条件设置 MatchPhraseQueryBuilder mpq1 = QueryBuilders .matchPhraseQuery("pointid",&qu ...