一、 基础查询语句:DQL query(查询的意思)
select colName1,………… from tname; 1:select子句:查询语句中必不可少的一部分 ①select 后可以指定要显示的字段名; ②可以使用通配符* 来代替表中的所有字段名; ③在查询的字段名后可以写别名,中间用as即可,as也可省略; 2:from子句:查询语句中必不可少的一部分 ①from 用来指定要操作的表对象 ②表名也可以起别名,直接在表名后 添加别名。 3:where子句: ①用来使用限制条件进行查询的。 ②查询出符合限制条件的记录。 ③符号: =,>,<,>=,<=,!= ④多个条件时使用and或者or进行连接。 ⑤当条件在某一个区间内或不在某一区间内时, 可以使用:[not] between p1 and p2 ⑥当条件为某些固定值时,可以使用集合。 例如: in/not in 用法: 字段名 in (值1,值2,…………); 表示符合集合中的任意一个即可。 相当于or 字段名 not in (值1,值2,…………); 表示不符合集合的任何一个。 相当于and⑦当all/any与集合连用时:
>all(值1,值2,…………) 大于集合中最大的 <all(值1,值2,…………) 小于集合中最小的 >any(值1,值2,…………) 大于集合中最小的 <any(值1,值2,…………) 小于集合中最大的4.模糊查询:
关键字:like 通配符: %:表示0到多个字符 _:表示一个字符 练习:第三个姓名为N select * from emp where job LIKE '__N%'; 练习:10,20部门中,名字有E,L的 select * from emp where deptno in(10,20) and (ename LIKE '%E%L%' or ename like '%L%E%');5.排序:也是查询语句中的一个子句
①位置:一定要放在查询语句的最后 ②用法:order by colName列名 ③升序:asc,默认不写 ④降序:desc ⑤排序时,null为最大值,理解为无穷大。 ⑥若按照两个字段排序: 逻辑:先按照第一个字段排序,当值一样时,才会按照第二个字段排序 每个字段都有自己的排序规则。 reg: order by colName asc,colName 4.去重: ①概念:去掉重复的数据,显示一次(过滤掉重复的数据) ; ②关键字:distinct(col); ③用法:此关键字用在select 语句后; 5聚合函数 ①概念:聚合函数,也叫多行函数,分组函数。 ②max()/min():查看每一组中的最大值和最小值; ③所有的聚合函数都忽略空值; ④sum():每一组数据的和 ⑤avg():求每一组数据的平均值 ,通常有nvl(,0)函数; ⑥count(): 统计每一组中的数据记录数,就是有多少行 通配符 * 可以代替任意字段。可以统计总记录数⑦用法:判断的话,聚合函数要用having;
6.group by子句:
作用是通过字段进行分组。字段值一样的为一组。 7.having:用来判断。