oracle(5)--DQL查询语句
DQL 数据查询语句(data query language)
1.查询条件符号:
< , > , = , <= , >= , != , < >
2. like 用于模糊匹配字符串,支持两个通配符:
_: 单一的字符
%:任意的字符
select * from stu where name=' %天%';----查询stu表名字含有天字的数据信息
3. in 和 not in
用来取出符合列表范围中的数据
select * from stu where id in (1,2,3); ----查询id为1,2,3的数据
4. between ...and...
查询符合某个值域范围的
select * from stu where id between 1 and 3 ;
5. distinct 过滤重复
select distinct id from stu;----
6. order by 排序 desc(降序)、 asc默认(升序)
select * from stu order by id ;
7. 聚合函数:max(最大值),min(最小值),avg(平均值),sum(总和),count(统计)
select max(sal),min(sal),avg(sal),sum(sal),count(*) from emp;
---查看emp表的最大工资....总人数;
注意:* 使用聚合函数时会忽略空值,如果需要空值则需要对空值进行处理
* where子句不能使用聚合函数,这与数据库的执行顺序有关
8. group by :分组函数
group by 子句可以将结果集按照其指定的字段值相同的记录看作一组,然后配合聚合函数进行统计工作
select avg(sal) from emp group by deptno;
当select 语句中含有聚合函数,那么凡是不在聚合函数中的其他单独字段都必须出现在group by语句中。
select avg(sal) ,deptno,job from emp group by deptno,job;
9. 查询语句的执行顺序
(1) from 子句:执行的顺序从后往前,从右往左。数据量较少的表尽量放在后面
(2)where 子句:执行的顺序为自下而上,从右到左。将能过滤最大数量的条件放在where子句的最后
(3)group by:执行顺序从左往右,最好在使用group by前使用where 将不需要的数据过滤掉
(4)having 子句:过滤,比较消耗资源
尽量避免使用* ,having会在检索出所有记录后才对结果集进行过滤,可以使用聚合函数。
(5)select 子句:尽量少使用* ,因为使用* 更耗资源
oracle 在解析的过程中,通过查询字典将*号依次转换成所有的列名,消耗时间。
(6)order by :排序---执行顺序从左到右,消耗资源。
oracle(5)--DQL查询语句的更多相关文章
- Oracle中分页查询语句
Oracle分页查询语句使我们最常用的语句之一,下面就为您介绍的Oracle分页查询语句的用法,如果您对此方面感兴趣的话,不妨一看. Oracle分页查询语句基本上可以按照本文给出的格式来进行套用.O ...
- Oracle的分页查询语句优化
Oracle的分页查询语句基本上可以按照本文给出的格式来进行套用. (一) 分页查询格式: SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (SELECT ...
- Oracle执行SQL查询语句的步骤
Oracle执行SQL查询语句的步骤 如果用户在SQL*Plus下输入了如下查询语句:SELECT * FROM dept: 查询语句的处理主要包括三个过程:编译(parse).执行(execute) ...
- 6.1课堂笔记—DML(数据操作语言),DQL查询语句
一.DML(数据操作语言) InnoDB MyISAM 支持事务 不支持事务 不支持全文索引 支持全文索引 支持外键约束 不支持 命令查看默认存储引擎 show variables like '%st ...
- DQL查询语句使用(select)
9)DQL查询语句使用 SELECT语句在PL/SQL中使用,必须 采用下面用法: select id INTO 变量 from t001 where id=5; 将记录字段 ...
- SQL中的DQL查询语句
目录 1. DQL:查询语句 排序查询 聚合函数 分组查询 分页查询 2. 约束 3. 多表之间的关系 4. 范式 DQL:查询语句 1. 排序查询 语法:order by 子句 order by 排 ...
- oracle中sql查询语句的执行顺序
查询语句的处理过程主要包含3个阶段:编译.执行.提取数据(sql查询语句的处理主要是由用户进程和服务器进程完成的,其他进程辅助配合) 一.编译parse 在进行编译时服务器进程会将sql语句的正文放入 ...
- oracle执行sql查询语句出现错误ORA-00942:表或视图不存在
情况是这样,A库的用户名和表空间分别为SH , SH 把业务表SH所有数据从A库,导入到B库, 表空间为SH,用户名为SP 在B库里面执行sql查询语句出现错误ORA-00942:表或视图不存在 语句 ...
- Oracle数据库,查询语句、内置函数
一.数据库的查询语句: 1.查询整个表: select * from 表名 例: 2.通过条件查询某一行数据: select * from 表名 where 字段名 例: 3.某一列数据去重查询: s ...
随机推荐
- ch8 CSS 3列(等高文本列)
css 3可以创建等高文本列,通过column-count.column-width.column-gap属性实现.假设标记如下: <h1>Socrates</h1> < ...
- 【STM32H7教程】第53章 STM32H7的LTDC应用之汉字小字库和全字库制作
完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第53章 STM32H7的LTDC应用之汉字小字库 ...
- Jquery制作插件---内容切换
//需求:点击左右导航箭头,实现内容的切换 //代码如下 <!DOCTYPE html> <html lang="en"> <head> < ...
- I2S 总线学习:2-I2S驱动WM8978
背景 为了了解I2S总线所对应的硬件设计,下文转载了<STM32:I2S驱动WM8978>. 以加深对I2S总线的了解. 正文 最近项目中使用STM32F4驱动音频IC:WM8978. 由 ...
- 连接数据库 - (mysql-thinkphp) (2)
1.现在conf里面写好选择的数据库 选择好了以后 2.在index里面输入 查询mysql数据库里面的表tables_priv的所有数据 public function index() { $res ...
- POJ1471 Tree/洛谷P4178 Tree
Tree P4178 Tree 点分治板子. 点分治就是直接找树的重心进行暴力计算,每次树的深度不会超过子树深度的\(\frac{1}{2}\),计算完就消除影响,找下一个重心. 所以伪代码: voi ...
- windows驱动不要签名
BCDEDIT -SET LOADOPTIONS DISABLE_INTEGRITY_CHECKSBCDEDIT -SET TESTSIGNING ON
- GNS3 icmp之严格路由
路由配置: icmp记录路由抓取出接口的IP地址,最多可以抓取9个.ip协议头中的options为40个字节 R1 : conf t int f0/0 no shutdown ip add 192.1 ...
- 浅谈MSF渗透测试
在渗透过程中,MSF漏洞利用神器是不可或缺的.更何况它是一个免费的.可下载的框架,通过它可以很容易地获取.开发并对计算机软件漏洞实施攻击.它本身附带数百个已知软件漏洞的专业级漏洞攻击工具.是信息收集. ...
- 045、Java中使用if语句进行判断
01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...