oracle学习笔记-命令和函数(一)

2014-11-24 17:04:10 · 作者: · 浏览: 0
oracle学习笔记-命令和函数
命令符 www.2cto.com
使用格式
说明
示例
Desc
Desc 表名
显示表结构
Desc bk_bookinfo
Set line
Set line n
将屏幕的输出置为n个字符宽
Set line 100
L
L
显示sql缓冲区的内容 www.2cto.com
L
N
N text
N为在SQL缓冲区的语句行号
Text为替代出错的sql语句
2 from studentinfo
/
/
运行sql缓冲区的语句
/
n
n
把缓冲区第n行作为当前行
3
A
A text
把text 增加到当前sql缓冲区后
A ,bookname
del
Del (n)
删除缓冲区第n行,无参数则删除当前行
Del 4
c
C /原文/新的正文
修改缓冲区中的sql语句
注意先用 n命令定位到当前行
C /tmp/dept
save
Save filepath
将sql缓冲区语句存入指定文件
Save c:\1.sql
Get
get filepath
将脚本文件装载到sql缓冲区
Get c:\1.sql
Edit
Edit (filepath)
编辑脚本文件(缓冲区sql语句)
Edit 或edit c:\1.sql
@
@ filepath
直接运行脚本文件
@ c:\1.sql
1.导出oracle数据
新建c:\test.sql 键入
Set line 120
Set pagesize 10000
Set heading off
Spool c:\data.txt
Select bookID||’,’||bookname from bb_bookinfo;
Spool off
在sql> @ c:\test.sql
2.自动化导出数据
新建 c:\auto.bat 键入
Sqlplus /nolog @ 1.sql
Exit
注意这里sqlplus和@命令必须在一行,我第一次没有执行找了半天,问题就出现在此
C:\1.sql
Set termout off
connect scott/tiger@orcl-89
set line 120
set pagesize 1000
set heading off
set feedback off
spool c:\data.txt
select bookID||','||name from bk_bookinfo where rownum<100;
spool off
exit
函数名
用法
说明
示例
lower
Lower(列名|表达式)
把字符转换成小写
Lower(‘THIS IS’)
Upper
Upper (列名|表达式)
把字符转换成大写
Upper(‘this is’)
Initcap
Initcap (列名|表达式)
把每个字头一个字母大写
Initcap(‘this is test’)
concat
Concat(列名|表达式. 列名|表达式)
把第一个字符串和第二个字符串链接
Concat(‘a’,’b’)
substr
Substr(列名|表达式,m,[n])
返回指定字符
Substr(‘abc’,3,1)
结果是c
Instr
Instr(列名|字符串,’字符串’,[m],[n])
返回所给字符串的数字位
m 从第m个字符搜索 n 出现的次数m和n默认为1
Instr(‘abcd’,’A’)
返回0
instr(‘abcd’,’b’)
返回2
说明字符串区分大小写
Length
注意无缩写len
Length(列名| 字符串)
返回表达式字符长度
Length(‘aabcde’)
ltrim
Ltrim(列名| 字符串)
去掉表达式左侧空格
Ltrim(‘ aaa’)
rtrim
Rtrim(列名|字符串)
去掉表达式右侧空格
Rtrim(‘aaa ’)
trim
Trim(列名|表达式)
去掉表达式两侧空格
Trim(‘ aaa ’)
Trim([leading|trailing|both]要去掉的字符 from 源字符串)
去掉表达式中的指定字符
Trim(‘ ’ from ‘ aa ’) 结果aa
Trim(leading ‘ ’ from ‘ aa ’); aa
trim(trailing ‘ ’ from ‘ aa ’); aa
round
Round(列名|表达式,n)
将表达式的数值四舍五入到小数点n位
Round(168.88,1)
trunc
Trunc(列名|表达式,n)
将表达式的数值截取到小数点后n位
Trunk(168.88,1)
mod
Mod(m,n)
m/n后的余数
Mod(6/7)
日期函数:
to_date(列名|字符串,[格式])
格式说明:
Year:
yy two digits 两位年 显示值:07
yyy three digits 三位年 显示值:007
yyyy four digits 四位年 显示值:2007
Month:
mm number 两位月 显示值:11
mon abbreviated 字符集表示 显示值:11月,若是英文版,显示nov
month spelled out 字符集表示 显示值:11月,若是英文版,显示november
Day:
dd number 当月第几天 显示值:02
ddd number 当年第几天 显示值:02
dy abbreviated 当周第几天简写 显示值:星期五,若是英文版,显示fri
day spelled out 当周第几天全写 显示值:星期五,若是英文版,显示friday
Hour:
hh two digits 12小时进制 显示值:01
hh24 two digits 24小时进制 显示值:13
Minute:
mi two digits 60进制 显示值:45
Second:
ss two digits 60进制 显示值:25
其它