1.4种常用数据类型
describe table_name;
number(p,s) 不需要单引号
varchar2(s) 要单引号,大小写不敏感
date
char(s) 大小写敏感
2.列的别名
1.在统计时非常有用
2.列名直接跟别名(也可以在中间写AS)
3.如果别名有特殊字符,可以用双引号括起来(双引号的唯一用途)
3.字符串连接
1.操作符 ||
2.连接的字符串用‘’单引号括起来
4.NULL的操作
1. count(NULL) ===> 0
2. 函数 NVL(value , defalutValue)
解释: 如果value为null ,返回defaultvalue,如果不为null,返回value本身
3.如果排序,在升序 ASC中排在最后
降序 DESC中排在最前
5.distinct去除重复字段
6.SQL比较操作
between...and... , in(list) , in(a,b,c) ,like , is null
7.通配符: %任意字符 , _任意单个字符
8 ORDER BY 细节
1.默认升序ASC
2.ORDER BY 表达式 或者 别名 或者 位置(查询字段的位置,从1开始)
3.可以order by 不在select中的字段
9.字符函数
LOWER , UPPER , INITCAP (第一个字母大写) ,CONCAT ,SUBSTR ,LENGTH (like java languate),NVL
10 数字函数
ROUND 去近似值 ROUND(45.923,2) = 45.92 ROUND(45.923,0)=46 ROUND(45.923,-1)=50
TRUNC TRUNC(45.923) = 45 TRUNCT(45.923,-1) =40
TO_CHAR(num , ‘fmt’) fmt:9代表一个数字
0 空位强制用0显示
TO_NUMBER(char)
11.JOIN
1.Equijoin 条件用=确定关联关系
2.Non-equijion 不用=号确定关联关系
3.Outer join place the operator (+) on the side of the join where there is no value to join to
4.Self join 相同的table,用别名区分
12. GROUP
having + conditions ,不能用where去限制group级别的数据,而是用having
AVG , COUNT , MAX , MIN (对于任意的数据类型), SUM
group by clause(子句,条款) :1.select中的字段必须出现在group by 后(也可以用max/min代替,形成单行函数/聚合函数)
2.group by 中的字段不一定出现在select中
13.Date functions
months_between(date1,date2) 计算2个月份之间的差距
add_months(date1,num)
next_day('date',friday);
last_day('date) 计算某月的最后一天
sysdate 获取系统当前时间
14 约束
列级约束
column [CONSTRAINT constraint_name] constraint_type
表级约束
column , ...
[CONSTRAINT constraint_name] constraint_type
(column,...)
15 外键
FOREIGN KEY , REFERENCES table(column) , ON DELETE CASCADE , ON DELETE SET NULL
16 CREATE TABLE
CREATE TABLE table
[column,...]
AS subQuery
17.INSERT
INSERT INTO table_name([column...]) values (args...)
INSERT INTO table_name([column,...]) subQuery
18.UPDATE
UPDATE table
SET column = value [,column2 = value2]
[WHERE condition]
19.事务性
4大特征: 原子性,一致性,隔离 , 持久
COMMIT , ROLLBACK , SAVEPOINT
20.sequence 序列
CREATE SEQUENCE name
[INCREASE BY n]
[START WITH n]
[MAXVALUE n]
[MINVALUE n]
[CACHE n]
sequence.NEXTVAL / CURRVAL
21.index 索引
CREATE INDEX index
ON table(column [,column ...])
原则:1.该索引对应的字段经常用where做查询字段,并且字段上的值范围很大,基本不相同
2.该列上有很多null值
3.查询出的结果数小于2%-4%
4.表很大,并且不被经常更新(UPDATE)
22.view 视图
本质上就是一段sql语句
CREATE OR REPLACE VIEW view_name
AS
subquery ------------subquery can't contains order by clause
[with check option]
[with read only]
23.add /modify a new column
ALTER TABLE table
ADD/MODIFY (column data_type [DEFAULT exper][ NOT NULL]
[,columndata_type ]....)
24.drop a column
ALTER TABLE table
DROP (column , ...)
25.add a constraint
ALTER TABLE table
ADD [CONSTRAINT constrain_name] constraint_type(column,...)
26.drop/disable a constraint
ALTER TABLE table
DROP/DISABLE CONSTRAINT contraint_name
DROP PRIMARY KEY CASCADE
27 rename table name
RENAME name TO name2
28.truncate a table
TRUNCATE TABLE table --can't rollback
sql点滴
最新推荐文章于 2020-10-16 14:01:23 发布