您的位置:首页 > 数据库 > Oracle

oracle 复习之简单查询

2012-04-16 11:24 225 查看
数据库的查询基本传都是sql语句,当让也会有数据库本身的方言。

1.查询一个表的所有内容:select job from emp;

JOB

---------

CLERK

SALESMAN

SALESMAN

MANAGER

SALESMAN

MANAGER

MANAGER

ANALYST

PRESIDENT

SALESMAN

CLERK

CLERK

ANALYST

CLERK

14 rows selected

此查询出来有好多重复的内容需要去重,要用到关键字distinct

select distinct job from emp;

JOB

---------

CLERK

SALESMAN

PRESIDENT

MANAGER

ANALYST

这样就把重复的内容去除了

2.多字段查询

如要查询 姓名 职位 薪资 :

select ename,job,sal from emp;

也可是使用“||”来连接要查询出的字段

select ename||job||sal from emp;

这个语句和上边的语句是等同的,但是这个查询出来的字段都是挨着的,如下:

ENAME||JOB||SAL

-----------------------------------------------------------

SMITHCLERK800

ALLENSALESMAN1600

WARDSALESMAN1250

JONESMANAGER2975

MARTINSALESMAN1250

BLAKEMANAGER2850

CLARKMANAGER2450

SCOTTANALYST3000

KINGPRESIDENT5000

TURNERSALESMAN1500

ADAMSCLERK1100

JAMESCLERK950

FORDANALYST3000

MILLERCLERK1300

14 rows selected

要解决这个问题,我们可以使用分隔符如逗号,空格等,在oracle中要原样输出的字符要用单引号括起来。在sql中单引号表示的是字符串。

select ename||' '||job||' '||sal from emp;

ENAME||''||JOB||''||SAL

------------------------------------------------------------------

SMITH CLERK 800

ALLEN SALESMAN 1600

WARD SALESMAN 1250

JONES MANAGER 2975

MARTIN SALESMAN 1250

BLAKE MANAGER 2850

CLARK MANAGER 2450

SCOTT ANALYST 3000

KING PRESIDENT 5000

TURNER SALESMAN 1500

ADAMS CLERK 1100

JAMES CLERK 950

FORD ANALYST 3000

MILLER CLERK 1300

3.如要输出的字符串是:

姓名:john,职位:java developer,薪资:800!

例举如下:

select '姓名:'||ename||',职位:'||job||',薪资:'||sal||'!' 职员信息 from emp;

职员信息

-----------------------------------------------------------------------------

姓名:SMITH,职位:CLERK,薪资:800!

姓名:ALLEN,职位:SALESMAN,薪资:1600!

姓名:WARD,职位:SALESMAN,薪资:1250!

姓名:JONES,职位:MANAGER,薪资:2975!

姓名:MARTIN,职位:SALESMAN,薪资:1250!

姓名:BLAKE,职位:MANAGER,薪资:2850!

姓名:CLARK,职位:MANAGER,薪资:2450!

姓名:SCOTT,职位:ANALYST,薪资:3000!

姓名:KING,职位:PRESIDENT,薪资:5000!

姓名:TURNER,职位:SALESMAN,薪资:1500!

姓名:ADAMS,职位:CLERK,薪资:1100!

姓名:JAMES,职位:CLERK,薪资:950!

姓名:FORD,职位:ANALYST,薪资:3000!

姓名:MILLER,职位:CLERK,薪资:1300!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息