首页 > 代码库 > Oracle SQL语句大全(一)

Oracle SQL语句大全(一)

Oracle SQL语句大全 1.desc(描述) emp    描述emp这张表 2.desc    dept       部门表 3.desc salgrade      薪水等级 4.select *from table 查找表中的元素 5.dual     是系统中的一张空表 6.select *from dual 7.select sysdate from dual 取出系统时间 8.select ename,sal*12 "annul sal"(取的别名) from emp; 查找用户姓名和用户的年薪 9.任何含有空值的数学表达式的值都是空值 select ename,sal*12+comm from emp; 10.select ename||sal from emp 其中的||相当于将sal全部转化为字符串 11.表示字符串的方法 select ename ||ajjf from emp; 12.如果其中有一个单引号就用2个单引号来代替他 select ename||sakj ldsfrom emp; 13.select distinct deptno from emp     (去除部门字段中重复的部分,关键字distinct) 14.select distinct deptno,job from emp;(去除这2个字段中重复的组合) 15.select *from dept where deptno=10;     取出条件(取出部门编号为10的记录) 16.select * from emp where ename=CLIRK; 取出部门中姓名为clirk的记录(注意取出过程中ename用单引号隔开) 17.select ename,sal from emp where sal>1500; 取出部门中薪水大于1500的人的姓名 18.select ename,sal,deptno from emp where deptno<> 10 取出部门中的部门号不等于10的 19.select ename,sal,deptno from emp where ename>CBA 取出部门中员工名字大于CBA的员工(实际比较的是ACIIS码) 20.select ename,sal from emp where sal between 800 and 1500    select ename,sal from emp where sal>=800 and sal<=1500;   (取出800和1500之间的数) 21.select ename,sal,comm from emp where comm is null (选出其中的空值)    select enmae,sal,comm from emp where comm is not null(选出其中的非空值) 22.select ename,sal,comm from emp where sal in (800,1500,2000);取出这3者之中的    select ename,sal,comm from emp where ename in(simth); 23.select ename,sal,hiredate from emp where hiredata>3-04月-81;宣传符合条件的日期 24.select ename,sal,from emp where sal>1000 or deptno=10;       找出工资薪水大于1000或者部门号等于10的员工 25.select ename,sal from emp where sal not in(500,1000);        查找薪水不在500到1000的员工姓名和月薪 26.select ename,sal from emp where ename like %ALL%;    select ename,sal from emp where ename like _%A%;         查找姓名中含有ALL的客户信息,一个横线代表一个通配符 27.select ename,sal from emp where ename like _%$%% escape $; 自己指定转易字符    select ename,sal from emp where ename like _%\%%;             查找中间含有%相匹配的客户信息,运用转易字符 28.select * from dept order by deptno                            对表中元素按部门号排序
   select *from dept order by deptno desc                        默认为升序,可以用desc按降序 29.select ename,sal from emp where sal <>1000 order by sal desc   按照查询条件来查询,并排序(asc升序排列) 30.select ename,sal*12 from emp where ename not like _%A% and sal>800 order by sal desc 31.select lower(ename) from emp 将ename都转化为小写    lower是函数能将字母转化为小写 32.select ename from emp where lower(ename) like _%a%; 找出ename 中所有的含有a的字符 33.select substr(ename,2,3) form emp            从第2个字符开始截取3个字符 34.select chr(65from dual;          将65转化为字符 35.select ascii(Afrom dual         将ACSII码转化为字符串 36.select round(23.565)from dual     四舍五入 36.select round(23,4565,2)from dual 四舍五入到第二位 37.select to_char(sal,$99.999.9999from emp 按指定格式输出    select to_char(sal,L99,999,9999) form emp L代表本地字符 38.select hiredate from emp    select to_char(hiredate,YYYY-MM-DD HH:MI:SS) from emp;          时间格式的显示    select to_char(sysdate,YYYY-MM-DD HH:MI:ss) from dual;          十二小时制显示系统时间    select to_char(sysdate,YYYY-MM-DD HH24:MI:SS) from dual         二四小时制显示系统时间 39.select ename,hiredate from emp where hiredate > to_date(2005-2-3 12:32:23,YYYY-MM-DD HH:MI:SS); 40 select sal from emp where sal>to_number($1,250.00,$9,999.99); 取出比它大的一切字符串(把特定格式的数字转化成字符) 41 select ename,sal+nvl(comm,0from emp;     讲comm值为空的用0来替换,单行函数(以一条记录为条件)一条对一条 42.select Max(sal) from emp;    select Min(sal) from emp;    select avg(sal) from emp;    select sum(sal) from emp;    select count(*from emp;                          查看表中一共有多少条记录    select count(*from emp where deptno=10;          查找部门10一共有多少人; 43.select avg(sal),deptno from emp group by deptno;   按部门号进行分组    select deptno,job,max(sal) from emp group by job,deptno; 按工作和部门号进行分组; 44.select ename from emp where sal=(select max(sal) from emp); 子查询,查找部门中薪水最高的员工姓名 45.group by 注意:出现在select列表中的字段,如果没有出现在组函数中必须出现在group by子句中 46.select avg(sal),deptno from emp group by deptno having avg(sal)>2000;    选出部门中平均薪水大于2000的部门, 47.select * from emp where sal>100 group by deptno having ..........order by........    先取数据--过滤数据------分组----对分组限制-------排序 48.select avg(sal) from emp where sal>2000 group by deptno having avg(sal)>1500 order by

 

Oracle SQL语句大全(一)