Oracle内建数据类型
一、 字符数据
1、 char(size)
2、 varchar2(size) 最常用,最大长度4000字节
3、 nvhar(size)、nvarchar(size)
4、 varchar(size)
5、 long 建议使用LOB大型数据
6、 raw 存储二进制,建议使用LOB大型数据
二、 数字
1、 number(p,s)
三、 日期
1、 data
2、 timestamp
3、 timestamp with time zone
4、 timestamp with local time zone
5、 interval year to month
6、 interval day to second
四、 大型对象数据类型
BLOB、CLOB、NCLOB、BFILE 最大长度4G
五、 ANSI、DB2、SQL/DS
六、 用户自定义类型
create type
create type body
SQL语句分类
一、 数据查询语句(DQL)
SELECT
二、 数据操纵语句(DML)
INSERT、UPDATE、DELETE
三、 数据定义语句(DDL)
CREATE、ALTER、DROP
四、 数据控制语句(DCL)
GRANT、REVOKE、COMMIT、ROLLBACK、SAVEPOINT
具体SQL语句
一、 create table
创建表
create table<table_name>
(
col_name<datatype>,
col_name<datatype>,
col_name<datatype>
)
二、 alter table
修改表
alter table<table_name>
[add<col_name datatype>]
[modify<col_name datatype>]
[drop column<column_name>]
三、 rename
重命名表
rename old_table_name to new_table_name
四、 truncate table
删除表中存在的信息,只保留表结构,删除数据不可恢复
truncate table <table_name>
五、 drop table
删除表
六、 drop table <table_name>
七、 select
选择语句
select <column_list>
from <table_name>
[where <codition>]
[group by <group_by expression >]
[having <group_condition>] ——组函数只能写having之后
[order by<col_name>]
1. dual表
2. sysdate系统时间
3. where条件中用到的运算
+-*/
||连接
=、!=、^=、<>、>、>=、<、<=、any,some,all
not、and、or
in(相当与any)、not in(相当于!=all)
between x and y
not between x and y
is null、is not null (可使用nvl()函数将null转换成需要的值)
exist
like(_表示一个字符,%表示0个或多个字符)
若字符串中包含“_”“%”,可使用escape ‘\’,如
like ‘%s\_t%’ escape ‘\’用来匹配“s_t”字符串
集合运算符
4. 常用函数
initcap首字母大写、
instr查找字符位置、l
ength字符长度、
lower转化为小写、
upper转化为大写、
lpad在左侧填充特定长度、
rpad在右侧填充特定长度、
rtrim剪切字符及其右侧字符、
lrtrim剪切字符及其左侧字符、
soundex、发音相似单词
substr、字符截取
chr、ascii码代表的字符
ascii、字符的ascii码
translate、字符替换
repleace、字符或字符串替换
abs绝对值、
ceil向上取整、
floor向下取整、
sqrt平方根、
power乘方、
sign数字正负、
trunc截去小数、
round四舍五入、
exp常数e的次幂、
mod余数、
ln自然对数值、
log以10为底的对数值、
vsize存储空间、
greatest一组值中的最大、
least一组值中的最大、
add_months在一个日期上加上或减去指定月份、
last_day返回指定月份的最后一天的日期、
next_day返回下一个指定日期的第一天、
months_between两个日期相隔的月份数、
trunc
日期格式:
SYEAR公元纪年、
YY年、
Q季、
MM月,
RM罗马月,
Month英文月份,
WW当年第几周,
W当月第几周,
DDD当年第几天,
DD当月第几天,
D周内第几天,
DY星期,
HH,HH12,12进制小时数
HH2424小时小时数,
MI分钟数(0~59),
SS秒数(0~59))
to_char将日期转化为字符、
to_date将字符转化为日期、
to_number将数字转化为字符、
decode将特定数据转变成另一种表示
5. 组函数
avg平均数、忽略null
count查询行数、
max最大值,忽略null、
min最小值,忽略null、
stddev标准差,忽略null、
sum总和,忽略null、
variance方差,忽略null
6. rowin是存储每条记录的实际物理地址,对记录的访问是基于rowid的,这是存取表中数据的最快的方法。
7. where字句不能够对group by的结果进行限定,需要用having限定。
8.