初学oracle

约束:

非空约束:not  null  

唯一约束:unique 

检查约束:check

主键约束:primary  key

外键约束:foreign  key

关键词:constriant

增:

创建一个表:create  table  表名 (字段名1  字段属性 , 字段名2  字段属性 , ...........); 

增加约束:alter  table  表名   modify   (字段名   constriant    约束名   约束属性 )

增加一个或多个字段:alter  table  表名   add (字段名1  字段属性,...............) ;

增加一条记录:insert    into  表名 (字段名1,字段名2,.......) values (内容1,内容2,.......);

创建索引:create  index  

创建视图:create  view

关键词语:create   table  、alter  table

删:

删除表:drop  table   表名

删除字段:alter   table   表名   drop   column  字段名;

删除记录:delete  table  表名   where  条件;不加条件删除所有记录

删除约束:alter   table   表名  drop   constriant    约束名;

删除重复的行:select    distinct   字段名   from   表名 ;

改:

修改表名:alter  table   表名  rename  to  新表名 ;

修改字段名:alter  table  表名  rename  column  字段名  to   新字段名;

修改记录:update   表名  set  (字段名1=内容1..............)  where  条件  ; 不增加条件 修改所有的记录

查:

查询所有的字段:select  *  from  表名

查询某个字段:select 字段名,.....from   表名

where查询:select  字段名/*   from   表名    where   条件;条件有通配符like  %、_    比较运算符:<  >  =   连接范围:in 、  and  、   between  and  等等

子查询:select  字段名/*  from  表名 where  字段名  (select   ..............);将子查询的结果 当作主查询的条件

分组查询:ROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组可接HAVING 子句  注意 having不能跟where同时使用


内链接查询:适用多表查询,

内连接:

等值连接:在连接条件中使用等于号(=)运算符比较被连接列的列值,其查询结果中列出被连接表中的所有列,包括其中的重复列

inner join:列出authors和publishers表中位于同一城市的作者和出版社,eg:SELECT

* FROM authors aINNER JOINpublishers pONa.city=p.city

不等连接:在连接条件使用除等于运算符以外的其它比较运算符比较被连接的列的列值。这些运算符包括>、>=、<=、<、!>、!<和<>

自然连接:在连接条件中使用等于(=)运算符比较被连接列的列值,但它使用选择列表指出查询结果集合中所包括的列,并删除连接表中的重复列;

inner join:删除authors 和publishers  表中重复列eg:SELECT a.*,p.pub_id,p.pub_name,p.country FROM authors AS a INNER JOIN  publishers AS p ON a.city=p.city


外连接:

左外连接:left outer

join 或left join eg:SELECT

a.*,b.* FROM luntan aLEFT JOINusertable as b ON a.username=b.username 显示第一个表中满足条件的所有记录

右外连接:right

outer join 或right join在结果表中包含第二个表中满足条件的所有记录

全外连接:full outer join 或full joineg:SELECT type,pub_name FROM titles CROSS JOIN publishers ORDER

BY type;在结果表中包含两个表中满足条件的所有记录


复制表结构及其数据

create table table_name2 as select * from table_name1;

只复制表结构

create table table_name3  as select * from table_name1 where 1=2;

只复制表数据(需要两个表的结构一样)

insert into table_name3 SELECT * FROM table_name1 ;

复制表数据

insert into table_name3 (column_name1, column_name2) SELECT column_name1, column_name2 FROM table_name1;


组函数

求最大值MAX

求最小值MIN

求最平均值AVG

求最总和SUM

求最记录数COUNT

关键词:distinct去重 、

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容