当我想在oracle中看到一个带有其记录的表时,表是杂乱无章的,我的意思是不像my-sql在属性名称下看到属性的每个值!我该如何解决?
答案 0 :(得分:6)
您使用的是什么工具?
如果您使用的是命令行SQL * Plus,则可能需要使用格式化命令来指定显示的宽度,即
丑陋的数据
SQL> select empno, ename, job, mgr, hiredate, sal, comm, deptno
2 from emp;
EMPNO ENAME JOB MGR HIREDATE SAL COMM D
EPTNO
---------- ---------- --------- ---------- --------- ---------- ---------- -----
-----
7369 smith CLERK 7902 17-DEC-80 800
20
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300
30
7521 WARD SALESMAN 7698 22-FEB-81 1250 500
30
7566 JONES MANAGER 7839 02-APR-81 2975
20
7654 MARTIN SALESMAN 7698 28-SEP-81 1250 1400
30
7698 BLAKE MANAGER 7839 01-MAY-81 2850
30
7782 CLARK MANAGER 7839 09-JUN-81 2450
10
7788 SCOTT ANALYST 7566 19-APR-87 3000
20
7839 KING PRESIDENT 17-NOV-81 5000
10
7844 TURNER SALESMAN 7698 08-SEP-81 1500 0
30
7876 ADAMS CLERK 7788 23-MAY-87 1110
20
EMPNO ENAME JOB MGR HIREDATE SAL COMM D
EPTNO
---------- ---------- --------- ---------- --------- ---------- ---------- -----
-----
7900 SM0 CLERK 7698 03-DEC-81 950
30
7902 FORD ANALYST 7566 03-DEC-81 3000
20
7934 MILLER CLERK 7782 23-JAN-82 1300
10
1234 FOO
15 rows selected.
但是,如果我们指定EMPNO
和MGR
应该只有5位数的空间而且ENAME
和JOB
应该以10个字符显示,那么一切都适合
SQL> column empno format 99999;
SQL> column ename format a10;
SQL> column job format a10;
SQL> column mgr format 99999;
SQL> /
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
------ ---------- ---------- ------ --------- ---------- ---------- ----------
7369 smith CLERK 7902 17-DEC-80 800 20
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30
7566 JONES MANAGER 7839 02-APR-81 2975 20
7654 MARTIN SALESMAN 7698 28-SEP-81 1250 1400 30
7698 BLAKE MANAGER 7839 01-MAY-81 2850 30
7782 CLARK MANAGER 7839 09-JUN-81 2450 10
7788 SCOTT ANALYST 7566 19-APR-87 3000 20
7839 KING PRESIDENT 17-NOV-81 5000 10
7844 TURNER SALESMAN 7698 08-SEP-81 1500 0 30
7876 ADAMS CLERK 7788 23-MAY-87 1110 20
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
------ ---------- ---------- ------ --------- ---------- ---------- ----------
7900 SM0 CLERK 7698 03-DEC-81 950 30
7902 FORD ANALYST 7566 03-DEC-81 3000 20
7934 MILLER CLERK 7782 23-JAN-82 1300 10
1234 FOO
15 rows selected.
您也可以执行
之类的操作SQL> set pagesize 100;
SQL> set linesize 120;
控制列标题的显示频率(默认值为每10行)以及每行的宽度。
当然,如果你只是一个编写即席查询的开发人员,那么这种格式化很麻烦。对于那种事情,你最好使用Oracle的SQL Developer,这是Oracle提供的免费PL / SQL IDE。 GUI会自动在您可以滚动的表格中显示结果。