Oracle知识整理

Oracle常用

命令

命令 内容
lsnrctl status 查看监听器命令
tsnping 192.168.1.** Oracle net网络服务是否可被接受
select name from v$database 查看数据库
select instance_name from v$instance 查看实例
select tablespace from dab_users 查看表空间
create tablespace ** datafile** size* * autoextend on 创建表空间
create user ** identified by ** default tablespace ** temporary tablespace ** 创建新用户
grant connect/resource/dba to *** 分配权限给用户
select * from dba_users 查看所有用户
alter user scott account unlock 解锁scott
DISTINCT 删除重复行(会自动升序)
<> 不等于(不包括null值,需要or is null)
between...and... 之间(包括左右两边)
like %零个或多个字符 _一个字符
order by asc升序,缺省 desc降序
upper('x') 大写
lower('x') 小写
initcap('x') 首字母大写
length('x') 字符个数
nvl(x,value) x为空,返回value,否则返回x(value类型要和x一致)
nvl2(x,v1,v2) x不为空,返回v1,否则返回v2
replace(x,ss,rs) x中查找ss,替换为rs
substr(x,s,l) 返回一个字符串,从s开始,l长度(-s从s后开始,无l默认到结尾)
lpad/rpad(x,wl) x左/右补空格,得到总长wl的字符串
ltrim/rtrim(x,c) x左/右边截去c字符
concat = || 连接记录
instr(x,a) 返回a在x中的位置
floor(x) 最大整数
mod(x,y) x除y的余数
round(x) 四舍五入
trunc(x) 截取小数
sysdate 返回系统时间
add_months(x,y) 返回x加上y月后的结果,y为负就减去
last_day(x) 返回x中月的最后一天
next_day(x,day) x开始下一个day的时间值,day时文本字符,如saturday
to_char(date,'') 操作日期
to_number(char) 字符转换为数字
to_date(char) 字符转换为日期
to_char(2463,'xxxx') 十进制转化十六进制
to_char('99f','xxxx') 十六进制转化十进制
decode(col,search,result,default) if-then-else
rownum 显示行号,伪列
count(**) 表的总行数
rowid 唯一标记,物理表的内部地址,有两个地址,一个块,一个行

优先级规则

次序 运算符
1 所有的比较运算* / + -
2 NOT
3 AND
4 OR

默认日期格式修改

`ALTER SESSION SET NLS_DATE_FORMAT='MONTH-DD-YYYY' 

TO_CHAR

处理日期

to_char(date,'') 操作日期

模板 描述
HH 一天的小时数 (01-12)
HH12 一天的小时数 (01-12)
HH24 一天的小时数 (00-23)
MI 分钟 (00-59)
SS 秒 (00-59)
SSSS 午夜后的秒 (0-86399)
AM or A.M. or PM or P.M. 正午标识(大写)
am or a.m. or pm or p.m. 正午标识(小写)
Y,YYY 带逗号的年(4 和更多位)
YYYY 年(4和更多位)
YYY 年的后三位
YY 年的后两位
Y 年的最后一位
BC or B.C. or AD or A.D. 年标识(大写)
bc or b.c. or ad or a.d. 年标识(小写)
MONTH 全长大写月份名(9字符)
Month 全长混合大小写月份名(9字符)
month 全长小写月份名(9字符)
MON 大写缩写月份名(3字符)
Mon 缩写混合大小写月份名(3字符)
mon 小写缩写月份名(3字符)
MM 月份 (01-12)
DAY 全长大写日期名(9字符)
Day 全长混合大小写日期名(9字符)
day 全长小写日期名(9字符)
DY 缩写大写日期名(3字符)
Dy 缩写混合大小写日期名(3字符)
dy 缩写小写日期名(3字符)
DDD 一年里的日子(001-366)
DD 一个月里的日子(01-31)
D 一周里的日子(1-7;SUN=1)
W 一个月里的周数
WW 一年里的周数
CC 世纪(2 位)
J Julian 日期(自公元前4712年1月1日来的日期)
Q 季度
RM 罗马数字的月份(I-XII;I=JAN)-大写
rm 罗马数字的月份(I-XII;I=JAN)-小写

处理数字

to_char(number,'') 操作数字

模板 描述
9 带有指定位数的值
0 前导零的值
. (句点) 小数
, (逗号) 分组(千)分隔符
PR 尖括号内负值
S 带负号的负值(使用本地化)
L 货币符号(使用本地化)
D 小数点(使用本地化)
G 分组分隔符(使用本地化)
MI 在指明的位置的负号(如果数字 < 0)
PL 在指明的位置的正号(如果数字 > 0)
SG 在指明的位置的正/负号
RN 罗马数字(输入在 1 和 3999 之间)
TH or th 转换成序数
V 移动 n 位(小数)(参阅注解)
EEEE 科学记数。现在不支持。

ROWID

Oracle中ROWID详解_LetMe-CSDN博客_rowid

posted @ 2021-08-12 22:48  T-bye  阅读(56)  评论(0)    收藏  举报
// //