免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1189 | 回复: 0
打印 上一主题 下一主题

SQL*PLUS的命令行——column命令 - [ORACLE] [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-20 09:48 |只看该作者 |倒序浏览

SQL*PLUS(或 称sqlplus)里除了我们经常使用的sql语句外,还有另外一些命令,它们通过对标题、列标题、页宽、页长以及时间等参数的格式化操作来控制sql语 句的输出的内容和格式,常见的比如"set timing on”,"set heading off”等。

基本的SqlPlus命令

命令 说明
remark 注释
set headsep 标题换行
ttitle 设置输出页的头标题
btitle 设置输出页的尾标题
column 对sql语句中的列进行格式化处理
break on 通知sqlplus在输出结果中插入空格
compute sum 通知sqlplus计算小计
set linesize 设置sqlplus输出的最大行宽
set pagesize 设置页面的最大行数
set newpage 设置页面之间的空行数
spool sqlplus屏幕的文件输入输出命令
/**/ 注释,同remark
-- 双杠,注释,同remark
set pause sqlplus屏幕输出结果时在页面之间停顿
save 保存当前session最近的sql语句至指定的文件中
host 返回到操作系统环境,类似!
start或@ 执行文件中的命令
edit 使用自定义的编辑器编辑指定文件
define_editor 自定义sqlplus里的编辑器
exit或quit 退出sqlplus

今天先学习一下sqlplus里的column命令。

column

column是sqlplus里最实用的一个命令,很多时候sql语句输出的列宽度不合适而影响查看,都需要用到这个命令来更改select语句中指定列的宽度和标题。大部分时候,我们可以简写column为col即可,主要有以下两种用法:

  • 修改列宽度
        column c1 format a20          --将列c1(字符型)显示最大宽度调整为20个字符
        column c1 format 9999999 --将列c1(num型)显示最大宽度调整为7个字符
  • 修改列标题
        column c1 heading c2      --将c1的列名输出为c2

示例如下:

未修改前的默认设置输出:
SQL> select a.FILE_NAME,a.TABLESPACE_NAME,b.CURRENT_SCN from 
DBA_DATA_FILES a ,v$database b where a.TABLESPACE_NAME='USERS';

FILE_NAME
---------------------------------------------------------------------------
TABLESPACE_NAME                CURRENT_SCN
------------------------------ -----------
+DATAGRP/db/datafile/users.259.686941969
USERS                           7.3498E+10

修改后的输出结果:
SQL> col FILE_NAME for a45                   --定义FILE_NAME列最大显示45个字符
SQL> col TABLESPACE_NAME for a10             --定义该列最大显示10个字符
SQL> col CURRENT_SCN for 999999999999        --定义该列最长显示12个数字
SQL> col TABLESPACE_NAME heading 'TBS_NAME'  --定义该列输出标题为"TBS_NAME”
SQL> /

FILE_NAME                                     TBS_NAME     CURRENT_SCN
--------------------------------------------- ---------- -------------
+DATAGRP/db/datafile/users.259.686941969      USERS        73497663251

SQL>

看着是不是爽多了。

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP