《SQL 21日自学通(V3.0)(PDF格式)》第145章


涨过工资了 
日期转换 
如果你想对日期的显示加一些附加的格式 那么你可以使用 TO_CHAR 来改变日期的 
显示方式 例子中首先得到的是今天的日期 
输入 
SQL》 select sysdate from dual 
输出 
SYSDATE 
08…MAY…97 
当将日期转换为字符串时 你可以使用 TO_CHAR 函数功能的下列语法 
464 
…………………………………………………………Page 465……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪 
语法 
TO_CHAR(sysdate;"date picture") 
Date picture 是你想要看到的日期形式 最常见的日期形式如下 
Mon 当前月简写 
Day 当前日期是本周中的第几天 
mm 当前的月份 
yy 当前年的最后两位数 
dd 当前日期是当前月的第几天 
Yyyy 当前年 
ddd 当前日期是当前年中的第几天 
hh 当前时间是当前天的第几小时 
mi 当前时间是当前小时的第几分钟 
ss 当前时间是当前分钟的第几秒 
a。m。 显示 PM 或 AM 
在 date picture 中的引号中也可以包括逗号和其它的文本字符 
输入 
SQL》 col today for a20 
SQL》 select to_char(sysdate;"Mon dd; yyyy") today from dual; 
输出 
TODAY 
May 08; 1997 
分析 
注意在 COLUMN 列中如何使用 today 的别名 
输入 
SQL》 col today hea "TODAYs JULIAN DATE" for a20 
SQL》 select to_char(sysdate;"ddd") today from dual; 
输出 
TODAYs JULIAN DATE 
128 
分析 
有一些公司更喜欢使用乌利尤斯 恺撒日期并带有两位年份数字的写法 你的日期看 
465 
…………………………………………………………Page 466……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪 
起来就是’yyddd’的样子 
假定你已经写了一个小脚本并假定它的名字为 day 下边的例子将打开这个文件 查 
看它的内容 并执行它以获得不同格式的日期转换信息 
输入 
SQL》 get day 
输出 
line 10 truncated。 
1 set echo on 
2 col day for a10 
3 col today for a25 
4 col year for a25 
5 col time for a15 
6 select to_char(sysdate;"Day") day; 
7 to_char(sysdate;"Mon dd; yyyy") today; 
8 to_char(sysdate;"Year") year; 
9 to_char(sysdate;"hh:mi:ss a。m。") time 
10* from dual 
现在 运行一下这个脚本 
输入 
SQL》 @day 
输出 
SQL》 set echo on 
SQL》 col day for a10 
SQL》 col today for a25 
SQL》 col year for a25 
SQL》 col time for a15 
SQL》 select to_char(sysdate;"Day") day; 
2 to_char(sysdate;"Mon dd; yyyy") today; 
3 to_char(sysdate;"Year") year; 
4 to_char(sysdate;"hh:mi:ss a。m。") time 
466 
…………………………………………………………Page 467……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪 
5 from dual; 
DAY TODAY YEAR TIME 
Thursday May 08; 1997 Nineteen Ninety…Seven 04:10:43 p。m。 
分析 
因为ECHO 设置为ON 所以在这个例子中运行之前会显示整个的语句 此外 SYSDATE 
会被填入到四列中并被转换为四种格式 
TO_DATE 函数还可以将文本转换为日期格式 基本的语法与 TO_CHAR 类似 
语法 
TO_DATE(expression;"date_picture") 
Try a couple of examples: 
输入 
SQL》 select to_date("19970501";"yyyymmdd") 〃NEW DATE〃 from dual 
输出 
NEW DATE 
01…MAY…97 
输入 
SQL》 select to_date("05/01/97";"mm〃/〃dd〃/〃yy") 〃NEW DATE〃 from dual 
输出 
NEW DATE 
01…MAY…97 
分析 
注意 这里的字符串用引号括起来了 
运行一系列的 SQL 文件 
一个 SQL 脚本文件可以包括你在 SQL 提示下输入到缓冲区中的任何内容 甚至可以 
是运行其它 SQL 脚本的命令 也就是说你可以从一个 SQL 脚本中执行另一个 SQL 脚本 
下图显示了使用 EDIT 命令创建的脚本 这个文件中包括了多条的 SQL 语句和运行其它的 
SQL 脚本的命令 
输入 
SQL》 edit main。sql 
467 
…………………………………………………………Page 468……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪 
输出 
SQL》 @main 
分析 
在启动 main。sql 以后 你可以运行在这个文件中的每一个 SQL 命令 query1 到 query5 
将会被执行 次序如下图所示 
在你的 SQL 脚本中加入注释 
SQL*PLUS 为你提供了三种在脚本文件中加入注释的方法 
………一次可以注释一行语句 
REMARK 也可以一次注释一行语句 
/* */可以注释多行语句 
请学习下边的例子 
输入 
SQL》 input 
1 REMARK this is a ment 
2 …this is a ment too 
3 REM 
4 … SET MANDS 
468 
…………………………………………………………Page 469……………………………………………………………
SQL 21 日自学通(V1。0) 翻译人 笨猪 
5 set echo on 
6 set feedback on 
7 … SQL STATEMENT 
8 select * 
小说推荐
返回首页返回目录