为了在 SQL*Plus 环境中生成符合用户需要规范的报表,SQL*Plus 工具提供了多个用于格式化查询结果的命令,使用这些命令可以实现设置列的标题、定义输出值的显示格式和显示宽度、为报表增加头标题和底标题、在报表中显示当前日期和页号等。

一、Column 命令

  该命令可以实现格式化查询结果、设置列宽度、重新设置列标题等功能。

  语法格式:

col[umn]  [column_name | alias | option]
  • columen_name:用于指定设置的列的名称。
  • alias:用于指定列的别名,通过它可以把英文列标题设置为汉字。
  • option:用于指定某个列的显示格式,option 选项的值及其说明如下:
option 选项的值 说明
clear 消除指定列所设置的显示属性,从而回复列使用默认的显示属性
format 格式化指定的列
heading 定义列标题
justify 调整列标题的对其方式。默认数值类型的列为右对齐,其他类型的列为左对齐
null 指定一个字符串,如果列的值为null,则由该字符串代替
print/noprint 心事列标题或隐藏列标题,默认为print
on|off 控制定义的显示属性的状态,off表示定义的所有显示属性都不起作用,默认为on
wrapped 当字符串的长度超过显示宽度时,将字符串的超出部分折叠到下一行显示
word_wrapped 表示从一个完整的字符处折叠
truncated 表示截断字符串尾部

  如果关键字 column 后面未指定任何参数,则 column 命令将显示 SQL*Plus 环境中所有列的当前定义属性;如果在 column 后面指定某个列名,则显示指定列的当前定义属性。

  常用 option 选项如下:

  1、format 命令

    该选项用于格式化指定的列,需要在 format 关键字的后面跟一个掩码格式。

  2、heading 命令

    该选项用于定义列标题,比如,许多数据表或试图的列名都为英文格式,可以使用此选项将英文形式的列标题显示为中文格式。

    EG:

SQL > col empno heading  雇员编号
SQL > col ename heading 雇员姓名
SQL > select empno,ename from scott.emp

      这样就可以将数据库查出来的列名以中文的格式显示

  3、null 命令

    该选项的后面指定一个字符串,如果列的值为 null,则用字符串代替空值。

    EG:

SQL > col  common null "空值"
SQL > select empno,common from scott.emp where comm is null

     这样当从表中查出来的common 的这一列没有值得时候,就会在common 这一列下面显示 “空值” 的字符串。

  4、on | off  命令

    该选项用于控制定义的显示属性的状态,off 表示定义的所有显示属性都不起作用,默认为 on。

  5、wrapped / word_wrapped 选项

    这两个选项都用于实现折行的功能,wrapped 选项按照指定长度折行,Word_wrapped  选项按照完整的字符折行。

二、Ttitle 和 Btitle

  在 SQL*Plus 环境中,执行 SQL语句后的显示结果在默认情况下包括列标题、页分割线、查询结果和行数合计等内容。可以为整个输出结果设置报表头(头标题)、为每页都这是页标题和页码、为整个输出结果设置报表尾,会使打印报表更美观。SQL*Plus 就为我们提供了 Ttitle 和 Btitle 命令,这个两个命令分别用来设置打印时每页的顶部和底部标题。

  Ttitle 命令语法格式如下:

Tti[tle] [printspect [text | variable] ...] | [off | on]
  •   printspec:用来作为头标题的修饰性选项,有如下的值:    
printspec 选项的值 说明
col 指定在当前行的第几列打印头部标题
skip 跳到从下一行开始的第几行,默认为1
left 在当前行中左对齐打印数据
center 在当前行中间打印数据
right 在当前行中右对齐打印数据
bold 以黑体打印数据
  •     text:用于设置输出结果的头标题(报表头文字)
  •     variable :用于在头标题中输出相应的变量值
  •   off:表示禁止打印头标题
  •   on:表示允许打印头标题

  注意:Btitle 的语法格式与 Ttitle 的语法格式相同,如果在 Ttitle 或 Btitle 命令没有任何参数,则显示当前的 Ttitle 或 Btitle 的定义。

     每次设置的头标题和底标题有效期直到本次会话结束后终止。可以使用 ttitle off 命令和 btitle 命令来手动取消头标题和底标题的设置消息。

SQL*Plus 格式化查询结果的更多相关文章

  1. 学习笔记:oracle学习二:oracle11g数据库sql*plus命令之常用sqlplus命令、格式化查询结果

    目录 1.常用sqlplus命令 1.1 HELP命令 1.2 describe命令 1.3 SPOOL命令 1.4 其他常用命令 1.4.1 define命令 1.4.2 show命令 1.4.3 ...

  2. sql跨库查询

    ---------------------------------------------------------------------------------- --1. 创建链接服务器 --1. ...

  3. SQL基础-->层次化查询(START BY ... CONNECT BY PRIOR)[转]

    --====================================================== --SQL基础-->层次化查询(START BY ... CONNECT BY ...

  4. SQL 时间格式化函数发布

    SQL 时间格式化函数,有时候因某种需要需要格式化成需要的时间格式,需要的朋友可以收藏下,以备后用. SQL Server里面可能经常会用到的日期格式转换方法: sql server使用convert ...

  5. Oracle ------ SQLDeveloper中SQL语句格式化快捷键

    Oracle SQL Developer中SQL语句格式化快捷键: 每次sql复制到SQL Developer面板的时候,格式老不对,而且看起来很不舒服,所有的sql都挤在一行完成. 这时我们可以全选 ...

  6. Sql Server中查询今天、昨天、本周、上周、本月、上月数据

    Sql Server中查询今天.昨天.本周.上周.本月.上月数据 在做Sql Server开发的时候有时需要获取表中今天.昨天.本周.上周.本月.上月等数据,这时候就需要使用DATEDIFF()函数及 ...

  7. SQL 数据分页查询

    最近学习了一下SQL的分页查询,总结了以下几种方法. 首先建立了一个表,随意插入的一些测试数据,表结构和数据如下图: 现在假设我们要做的是每页5条数据,而现在我们要取第三页的数据.(数据太少,就每页5 ...

  8. SQL表连接查询(inner join、full join、left join、right join)

    SQL表连接查询(inner join.full join.left join.right join) 前提条件:假设有两个表,一个是学生表,一个是学生成绩表. 表的数据有: 一.内连接-inner ...

  9. Sql Server参数化查询之where in和like实现详解

    where in 的参数化查询实现 首先说一下我们常用的办法,直接拼SQL实现,一般情况下都能满足需要 string userIds = "1,2,3,4"; using (Sql ...

随机推荐

  1. skywalking6.3.0安装(centos7.6)

    先安装好jdk8(略),经测试高于jdk8不支持. http://skywalking.apache.org/downloads/wget --no-check-certificate --no-co ...

  2. 详解intent和intentfilter

    1.Intent对象简介 Intent中文意思指"意图",按照Android的设计理念,Android使用Intent来封装程序的"调用意图",不管启动Acti ...

  3. rrr

    # coding:utf-8 import pika username = 'feng' password = 'nihao' host = '192.168.1.144' credentials = ...

  4. date命令时间戳和时间之间的转换

    这里是在mac下的操作,主要就是用date这个命令,更多的用法用man命令查看 字符串格式时间 TO 时间戳我们知道date 命令可以直接把当前时间转化为时间戳 # date +%s143678152 ...

  5. Win10访问共享文件夹如何取消用户名密码

    win10中,开启guest(来宾)账户的步骤是: 右击win10左下角Windows的图标->计算机管理->计算机管理(本地)->系统工具->本地用户和组->用户-&g ...

  6. SDN实验---Mininet的相关命令(待补充完善)

    一:补充 (一)推文 openvswitch的原理和常用命令 https://blog.csdn.net/ten_sory/article/details/79593554 (二)回顾:sudo mn ...

  7. 有相关性就有因果关系吗,教你玩转孟德尔随机化分析(mendelian randomization )

    流行病学研究常见的分析就是相关性分析了. 相关性分析某种程度上可以为我们提供一些研究思路,比如缺乏元素A与某种癌症相关,那么我们可以通过补充元素A来减少患癌率.这个结论的大前提是缺乏元素A会导致这种癌 ...

  8. UI Automator 介绍

    简介 Android 4.3发布的时候包含了一种新的测试工具–uiautomator,uiautomator是用来做UI测试的.也就是普通的手工测试,点击每个控件元素 看看输出的结果是否符合预期.比如 ...

  9. prettier

     prettier,是一个自以为是 Opinionated 的代码格式化工具,用来批量处理旧代码的统一. 涉及引号,分号,换行,缩进. prettier 支持我们大前端目前大部分语言处理,包括 Jav ...

  10. [LeetCode] 188. Best Time to Buy and Sell Stock IV 买卖股票的最佳时间 IV

    Say you have an array for which the ith element is the price of a given stock on day i. Design an al ...