今天看了一段oracle代码不太理解这里面表示的意思,希望各位大虾帮忙看看
col ename format a15
col job format a15
select lpad(' ',3*(level-1))|| ename ename,lpad(' ',3*(level-1)) || job job from emp where job<>'CLERK' start with mgr is null connect by mgr=PRIOR empno;
这里面的第一句和第二句看不懂是什么意思
col ename format a15
col job format a15
select lpad(' ',3*(level-1))|| ename ename,lpad(' ',3*(level-1)) || job job from emp where job<>'CLERK' start with mgr is null connect by mgr=PRIOR empno;
这里面的第一句和第二句看不懂是什么意思
col job format a15
这两句是设置ename 和job 字段的可显示长度的,比如:如果你后面查询结果中有ename长度大于15个字符的话,就有可能显示不完全。你可以设置小点 自己测试下。
--给个实例解释要容易点:
--1、不加前面两句:SQL*Plus: Release 8.0.6.0.0 - Production on 星期三 11月 3 16:44:08 2010(c) Copyright 1999 Oracle Corporation. All rights reserved.
Connected to:
Oracle Database 10g Release 10.1.0.2.0 - ProductionSQL> select lpad(' ',3*(level-1))|| ename ename,lpad(' ',3*(level-1)) || job job
2 from emp where job<>'CLERK' start with mgr is null connect by mgr=PRIOR empno;ENAME
--------------------------------------------------------------------------------
JOB
--------------------------------------------------------------------------------
KING
PRESIDENT JONES
MANAGER SCOTT
ANALYST
ENAME
--------------------------------------------------------------------------------
JOB
--------------------------------------------------------------------------------
FORD
ANALYST BLAKE
MANAGER ALLEN
SALESMAN
ENAME
--------------------------------------------------------------------------------
JOB
--------------------------------------------------------------------------------
WARD
SALESMAN MARTIN
SALESMAN TURNER
SALESMAN
ENAME
--------------------------------------------------------------------------------
JOB
--------------------------------------------------------------------------------
BLACK
SALESMAN MAXTON
MANAGER CLARK
MANAGER
12 rows selected.--2、加上前面两句
SQL> col ename format a15
SQL> col job format a15
SQL> select lpad(' ',3*(level-1))|| ename ename,lpad(' ',3*(level-1)) || job job
2 from emp where job<>'CLERK' start with mgr is null connect by mgr=PRIOR empno;ENAME JOB
--------------- ---------------
KING PRESIDENT
JONES MANAGER
SCOTT ANALYST
FORD ANALYST
BLAKE MANAGER
ALLEN SALESMAN
WARD SALESMAN
MARTIN SALESMAN
TURNER SALESMAN
BLACK SALESMAN
MAXTON MANAGERENAME JOB
--------------- ---------------
CLARK MANAGER12 rows selected.SQL>
col ename format a15 --用15位的字符显示ename
col job format a15