Oracle中5个核心Sql语句的基本构造:Select、Insert、Update、Delete和Merge

Sql语言提供了很多不同的选择来得到同样的结果集,关键是需要搞清楚在不同的使用场景下哪种构造是最高效的。

1.Select语句

Select语句用来从一个表中,或者其他数据库对象中提取数据。

select <column list>

from <table or view>

where <predicates>

group by <expressions>

having <predicates>

order by <column asc/desc>

1.1 From子句

from子句列出了所有被查询数据的源对象,这个源对象包括表、视图、物化视图、分区或子分区,或者是由自己建立一个子查询来生成子对象。

如果使用多个源,则这些源又可以分为

(1)交叉联结,也称为笛卡尔乘积;

(2)内联结;

(3)外联结。

1.2 Where子句

where子句提供了一种方法,可以按照条件来限制查询最终返回结果集的行数。

1.3 Group By子句

group by子句将执行from和where子句后得到的筛选后的结果集进行分组聚合。

1.4 Having子句

having子句将分组汇总后的查询结果集限定为只有该子句中的条件为真的数据行

1.5 Order By子句

order by子句用来对以上4种子句所筛选得到的结果集进行排序。

2.Insert语句

2.1 单表插入

insert into <table or view>

values(<value1>,<value2>,<value3>...)

或者

insert into <table or view>

select <column1>,<column2>,<column3>

from <table or view>

2.2 多表插入

insert all

when <predicates> then

into <table or view>

when <predicates> then

into <table or view>

....

else

into <table or view>

select <column1>,<column2>,<column3>

from <table or view>

3.Update语句

update语句的作用是改变表中原有行的列值。这个语句的语法结构由3部分组成:update、set和where

4.Delete语句

delete语句的作用是从表中移除行。这个语句的语法结构由3部分组成:delete、from和where

5.Merge语句

merge into <table or view>

using <table or view>

on <conditions>

when matched then

update <clause>

delete <clause>

when not matched then

insert <clause>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值