ORDER BY 排序
ASC 升序(默认)
DESC 降序
select * from s_emp order by dept_id , salary desc
部门号升序,工资降序
关键字distinct也会触发排序操作。
select * from employee order by 1; //按第一字段排序
NULL被认为无穷大。order by 可以跟别名。
select table_name from user_tables where table_name='S_EMP'; 查某个具体表名时,表名的字符串必须要为大写
或者采用 upper(table_name)
select * from user_talbes where table_name like ‘s\_%’ escape ‘\’;
使用转义字符对关键字进行转义。
concat 连接字符串 select concat(first_name , last_name) from s_emp;等效于||
substr 求子串 select substr('tarenasd0603' ,1,6) from dual; (取前六个字符) select substr('tarenasd0603',-2) from dual; (取后两个字符)
length 求字符长度
select length('zhonghua') from dual;
from dual的意思
虚表(dual)是oracle提供的最小的工作表,它仅包含一行一列。对于虚表(dual)来说,其中的列往往是不相关的或无关紧要的。
如:查询当前的系统日期
SQL> select sysdate from dual;
SYSDATE
-------------------
2004/04/28 08:49:41
round 函数(四舍五入) select round(45.935, 2) from dual; 不带参数时默认为0位小数
trunc 函数(截取,不管后面的数字) select trunc(45.995, 1) from dual;
组函数
group by 分组子句 对分组后的子句进行过滤还可以用having 条件 对分组后的条件进行过滤 where 是对记录进行过滤
有佣金人数的百分比
select count( commission_pct )count(*) from s_emp;
select count(dept_id) from s_emp;
select count(distinct dept_id) from s_emp;//区分相同的dept_id
求各个部门的平均工资:group by 子句也会触发排序
select dept_id , avg(salary) aa from s_emp group by dept_id order by aa ; //对平均工资排序
select dept_id , avg(salary) aa from s_emp group by dept_id;
哪些部门的平均工资比2000高:
select dept_id, avg(salary) aa from s_emp group by (dept_id) having avg(salary)>2000;
除了42部门以外的部门的平均工资:
select dept_id , avg(salary) from s_emp group by (dept_id ) having dept_id!=42;
select dept_id , avg(salary) from s_emp where dept_id!=42 group by (dept_id ) ;(此种sql效率要高,先过滤) 再计算)
where 单行函数。
having 组函数。
每个员工所在的部门和部门所在的地区
select first_name , s_dept.name, s_region.name from s_emp, s_dept, s_region where
s_emp.dept_id=s_dept.id and s_dept.region_id=s_region.id;
等价于
select first_name,d.name,r.name
from s_emp e,s_dept d,s_region r
where e.dept_id=d.id and d.region_id=r.id;
分享到:
相关推荐
Oracle Sql语句转换成Mysql Sql语句java 源码,非常简单,只要给定源oracle sql语句地址,和生成目标文件地址运行即可。
Oracle sql语句大全. sql语句的优化资料
ORACLE SQL 语句(典型应用总结).pdf
Oracle SQL语句性能优化
Oracle SQL 语句优化53个规则详解
oracle Sql语句二 oracle Sql语句二
Oracle 常用 sql 语句 实用性
oracle sql语句oracle sql语句oracle sql语句oracle sql语句oracle sql语句oracle sql语句oracle sql语句oracle sql语句oracle sql语句oracle sql语句
oracle Sql语句
很全的oracle sql语句学习资料,从基础开始,逐层深入,让你成为sql高手
Oracle sql语句优化规则汇总
Oracle SQL语句跟踪
Oracle Sql 语句大全 培训内部资料 欢迎参观下载
ORACLEsql语句优化,性能优化,语句技巧优化
我所整理的oracle sql语句,欢迎一起研究oracle数据库和linux操作系统
Oracle SQL语句方法 Study\SoftFile
oracle 的sql查询语句,详细,有图。包含子查询,多表查询,分组函数等等
oracle SQL 语句插入数据 方便 简洁