Oracle 数据库SQL语句大全

Oracle 数据库SQL语句大全

4、基本的sql语句示例

选择: * from where 范围

插入: into (,) (,)

删除: from where 范围

更新: set = where 范围

查找: * from where like ’%%’ —like的语法很精妙,查资料!

排序: * from order by ,

总数: count as from

求和: sum() as from

平均: avg() as from

最大: max() as from

最小: min() as from

5、高级查询运算词sql语句示例

A: UNION 运算符

UNION 运算符通过组合其他两个结果表(例如 和 )并消去表中任何重复行而派生出一个结果表。当 ALL 随 UNION 一起使用时(即 UNION ALL),不消除重复行。两种情况下,派生表的每一行不是来自 就是来自 。

B: 运算符

运算符通过包括所有在 中但不在 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 一起使用时 ( ALL),不消除重复行。

C: 运算符

运算符通过只包括 和 中都有的行并消除所有重复行而派生出一个结果表。当 ALL 随 一起使用时 ( ALL),不消除重复行。

注:使用运算词的几个查询结果行必须是一致的。

6、外连接sql语句示例

A、left (outer) join:

左外连接(左连接):结果集几包括连接表的匹配行oracle sql经典查询练手,也包括左连接表的所有行。

SQL: a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c

B:right (outer) join:

右外连接(右连接):结果集既包括连接表的匹配连接行,也包括右连接表的所有行。

C:full/cross (outer) join:

全外连接:不仅包括符号连接表的匹配行oracle sql经典查询练手,还包括两个连接表中的所有记录。

7、分组:Group by sql语句示例

一张表,一旦分组完成后,查询后只能得到组相关的信息。

组相关的信息:(统计信息) count,sum,max,min,avg 分组的标准)

在中分组时:不能以text,ntext,image类型的字段作为分组依据

在统计函数中的字段,不能和普通的字段放在一起;

8、提升

看到这的你,才开始了你的数据库之旅

8.1 复制表(只复制结构,源表名:a 新表名:b) (可用)

法一: * into b from a where 11(仅用于)

法二: top 0 * into b from a

8.2 拷贝表(拷贝数据,源表名:a 目标表名:b) (可用)

into b(a, b, c) d,e,f from b;

oracle sql经典查询练手

8.3 跨数据库之间表的拷贝(具体数据使用绝对路径) (可用)

into b(a, b, c) d,e,f from b in ‘具体数据库’ where 条件

例子:..from b in ‘”&.(“.”)&”/data.mdb” &”’ where..

8.4 子查询(表名1:a 表名2:b)

a,b,c from a where a IN ( d from b ) 或者: a,b,c from a where a IN (1,2,3)

8.5 显示文章、提交人和最后回复时间

a.title,a.,b. from table a,( max() from table where table.title=a.title) b

8.6 外连接查询(表名1:a 表名2:b)

a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c

8.7 在线视图查询(表名1:a )

* from ( a,b,c FROM a) T where t.a > 1;

8.8 的用法,限制查询数据范围时包括了边界值,not 不包括

* from where time time1 and time2

a,b,c, from where a not 数值1 and 数值2

8.9 in 的使用方法

* from where a in (‘值1’,’值2’,’值4’,’值6’)

8.10 两张关联表,删除主表中已经在副表中没有的信息

from where not ( * from where .=. )

8.11 四表联查问题:

* from a left inner join b on a.a=b.b right inner join c on a.a=c.c inner join d on a.a=d.d where …..

8.12 日程安排提前五分钟提醒

SQL: * from 日程安排 where (‘’,f开始时间,())>5

8.13 一条sql 语句搞定数据库分页

top 10 b.* from ( top 20 主键字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段

具体实现:

关于数据库分页:

@start int,@end int

@sql (600)

set @sql=’ top’+str(@end-@start+1)+’+from T where rid not in( top’+str(@str-1)+’Rid from T where Rid>-1)’

exec @sql

注意:在top后不能直接跟一个变量,所以在实际应用中只有这样的进行特殊的处理。Rid为一个标识列,如果top后还有具体的字段,这样做是非常有好处的。因为这样可以避免 top的字段如果是逻辑索引的,查询的结果后实际表中的不一致(逻辑索引中的数据有可能和数据表中的不一致,而查询时如果处在索引则首先查询索引)

8.14 前10条记录

top 10 * from where 范围

8.15 选择在每一组b值相同的数据中对应的a最大的记录的所有信息(类似这样的用法可以用于论坛每月排行榜,每月热销产品分析,按科目成绩排名,等等.)

a,b,c from ta where a=( max(a) from tb where tb.b=ta.b)

8.16 包括所有在 中但不在 和 中的行并消除所有重复行而派生出一个结果表

( a from ) ( a from ) ( a from )

8.17 随机取出10条数据

top 10 * from order by newid()

8.18 随机选择记录

newid()

8.19 删除重复记录

oracle sql经典查询练手

1), from where id not in ( max(id) from group by col1,col2,…)

2), * into temp from

from

into * from temp

评价: 这种操作牵连大量的数据的移动,这种做法不适合大容量但数据操作

3),例如:在一个外部表中导入数据,由于某些原因第一次只导入了一部分Oracle 数据库SQL语句大全,但很难判断具体位置,这样只有在下一次全部导入,这样也就产生好多重复的字段,怎样删除重复字段

alter table

–添加一个自增列

add int (1,1)

from where not in(

max() from group by ,,…)

alter table drop

8.20 列出数据库里所有的表名

name from where type=’U’ // U代表用户

8.21 列出表里的所有的列名

name from where id=(‘’)

8.22 列示type、、pcs字段,以type字段排列,case可以方便地实现多重选择,类似 中的case。

type,sum(case when ‘A’ then pcs else 0 end),sum(case when ‘C’ then pcs else 0 end),sum(case when ‘B’ then pcs else 0 end) FROM group by type

显示结果:

type pcs

电脑 A 1

电脑 A 1

光盘 B 2

光盘 A 2

手机 B 3

手机 C 3

8.23 初始化表

TABLE

8.24 选择从10到15的记录

top 5 * from ( top 15 * from table order by id asc) 别名 order by id desc

三、技巧

1、1=1Oracle 数据库SQL语句大全,1=2的使用,在SQL语句组合时用的较多

“where 1=1” 是表示选择全部 “where 1=2”全部不选oracle sql经典查询练手,

如:

if @ !=”

begin

set @ = ‘ count(*) as Total from

’ + @ + ‘

where ’ + @

公告:
1. 本站所有资源来源于用户上传和网络,如有侵权请联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系站长处理!
6. 本站不售卖代码,资源标价只是站长收集整理的辛苦费!如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
7. 站长QQ号码 2205675299

资源库 - 资源分享下载网 » Oracle 数据库SQL语句大全

常见问题FAQ

关于资源售价和售后服务的说明?
本站所有资源的标价均为本站收集资源的辛苦费,不代表资源本身的价值。软件是高智慧高价值的商品,不可能是白菜价。本站资源标价只是赞助费用,收取的赞助费仅用来维持本站的日常运营!毕竟收集整理资料需要投入云计算资源和站长大量的精力。
代码有没有售后服务和技术支持?
由于代码的运行具有不可预见性,本站不保证代码完整可运行,不提供技术支持和售后服务。 本站原创代码都是站长自己开发的,可以有偿提供技术支持服务。 网站里标明【亲测】的代码都是站长亲测过的,其他的代码由于精力有限,没有一一测试,不能保证代码就一定能够使用,更没有技术支持服务,下载前请自行斟酌。
有没有搭建服务?
由于搭建服务比较费时费力,所以本站除了原创代码外均不提供搭建服务。本站分享代码纯属兴趣爱好,不以盈利为目的,请勿咨询有没有搭建服务,谢谢理解。
链接地址失效了怎么办?
请带上资源链接地址联系客服,工作时间内我们看到后将第一时间回复。
关于解压密码
本站资源一般都没有加密,如果发现需要解压密码的,那么就输入 hao.35dc.com 试试。

发表评论

资源库,由老程序员细心甄别、精心筛选,只为提供优质的源码资源

关于我们 联系我们