Oracle高级教程

  • 尽量说的通俗易懂,尽量表述的细致全面

Oracle是关系型数据库

  • 结构化查询语言,可以让我们访问和处理数据库。

  • 数据库是载体,最终都要回归于业务和具体需求,在21世纪,数据是有巨大价值的。

  • 你追求的不仅仅是技术,更是梦想,世界因你在改变!
  • TABLE:SD_GSS, 数据如下

    YEARNO
    19922
    19923
    19924
    20175
    20176
    20177
  • SELECT TOP 返回结果集指定行数

   SELECT YEAR,NO
   FROM   SD_GSS 
   WHERE
   YEAR=1992 
   AND
   ROWNUM <3;
  • 上面解读:这是一条简单的查询语句,年份为1992共计有3条,后边又加上了返回行数为3的限制
  • 结果如下

    YEARNO
    19922
    19923
  • SQL LIKE 操作符 返回结果集制定行数
  • LIKE 下的条件可以搜索制定模式数据,也就是模糊查询,大体有三种写法

   SELECT YEAR,NO
   FROM   SD_GSS 
   WHERE
   YEAR LIKE '19%' 
   SELECT YEAR,NO
   FROM   SD_GSS 
   WHERE
   YEAR LIKE '92%' 
   SELECT YEAR,NO
   FROM   SD_GSS 
   WHERE
   YEAR LIKE '%99%' 
  • 上面解读:第一条是模糊'1992'尾部字符'92',第二条是模糊'1992'首部字符'19',第二条是模糊'1992'首尾字符这样实际中查询范围更广。
  • 工作中编程不建议使用LIKE ,效率低下,浪费系统开销
  • 以上三个结果相同,如下

    YEARNO
    19922
    19923
    19924
  • SQL LEFT JOIN,RIGHT JOIN 两个表中有交集,可以用JOIN连在一起

  • UNOIN,UNION ALL 查询数据,组合在一起,多个SELECT中间用UNION ALL,最后一个用UNION,两个SELECTUNION
  • 需要注意的是,UNION在一起的,字段需一致,以下SQL是不行的

   SELECT YEAR,NO
   FROM   SD_GSS 
   WHERE
   YEAR ='1992'
   UNION 
   SELECT YEAR
   FROM   SD_GSS 
   WHERE
   YEAR ='2017' 
  • INSERT INTO简单的就是插入
  • 设计到深入的还有锁表和性能开销,虽然那大都是DBA的事情,但励志成为技术大牛的你,不能不懂。
  • INSERT INTO可以指定字段插入,也可以全表插入
   INSERT INTO 
   SD_GSS(YEAR)
   VALUES('1992') 
   INSERT INTO
   SD_GSS 
   SELECT *FROM  
   SD_GSS_BAK --此处SD_GSS_BAK为SD_GSS的备份表,结构完全一致

最后一个INSERT INTO 遇错小技巧

  • 如果遇到以下报错,英文加上经验,报的是数据库唯一性,栏位肯定上了数据唯一性。
   ORA-00001: unique constraint (JOAN.SYS_C0099024) violated
  • 这时插入大量数据失败,一先ROLLBCK回滚,让插入数据动作还原,以防锁表。
  • 然后,可以先从备份表中减去母表中数据。再做插入,用MINUS做减法
   INSERT INTO  SD_GSS (SELECT *FROM  SD_GSS_BAK MINUS SELECT *FROM  SD_GSS) --实际工作中SQL可能很长很复杂

感激

写的比较简单,一切事物发展都有其底层,打好基础。感谢您能在百忙中阅读我的文稿,如有思想交际,不胜荣幸。推荐两个学习网站。

remark

  • 越是抽离出来的技术点,越是受用,实际结合点多。写的不好,还请多包涵,其实,通过一段时间工作,你理解这结构化的查询语言,入门包括深入理解内部机制是很快的。重在查资料和针对性的自我感悟。

关于作者

  var runoob = {
    nickName  : "墨客码",
    site : "http://www.cnblogs.com/gss0525/"
    desc : "本菜鸟做.net后台开发,热衷分享技术,认为不错的,给个赞,不足还望提出宝贵经验,谢谢"
  }

转载于:https://www.cnblogs.com/gss0525/p/6779896.html

Contents iii 3 Enhancements to the GROUP BY Clause Objectives 3-2 Review of Group Functions 3-3 Review of the GROUP BY Clause 3-4 Review of the HAVING Clause 3-5 GROUP BY with ROLLUP and CUBE Operators 3-6 ROLLUP Operator 3-7 ROLLUP Operator Example 3-8 CUBE Operator 3-9 CUBE Operator: Example 3-10 GROUPING Function 3-11 GROUPING Function: Example 3-12 GROUPING SETS 3-13 GROUPING SETS: Example 3-15 Composite Columns 3-17 Composite Columns: Example 3-19 Concatenated Groupings 3-21 Concatenated Groupings Example 3-22 Summary 3-23 Practice 3 Overview 3-24 4 Advanced Subqueries Objectives 4-2 What Is a Subquery? 4-3 Subqueries 4-4 Using a Subquery 4-5 Multiple-Column Subqueries 4-6 Column Comparisons 4-7 Pairwise Comparison Subquery 4-8 Nonpairwise Comparison Subquery 4-9 Using a Subquery in the FROM Clause 4-10 Scalar Subquery Expressions 4-11 Scalar Subqueries: Examples 4-12 Correlated Subqueries 4-14 Using Correlated Subqueries 4-16 Using the EXISTS Operator 4-18 Using the NOT EXISTS Operator 4-20 Correlated UPDATE 4-21 The WITH Clause 4-26 WITH Clause: Example 4-27 Summary 4-29 Practice 4 Overview 4-31 iv 5 Hierarchical Retrieval Objectives 5-2 Sample Data from the EMPLOYEES Table 5-3 Natural Tree Structure 5-4 Hierarchical Queries 5-5 Walking the Tree 5-6 Walking the Tree: From the Bottom Up 5-8 Walking the Tree: From the Top Down 5-9 Ranking Rows with the LEVEL Pseudocolumn 5-10 Formatting Hierarchical Reports Using LEVEL and LPAD 5-11 Pruning Branches 5-13 Summary 5-14 Practice 5 Overview 5-15 6 Oracle9i Extensions to DML and DDL Statements Objectives 6-2 Review of the INSERT Statement 6-3 Review of the UPDATE Statement 6-4 Overview of Multitable INSERT Statements 6-5 Types of Multitable INSERT Statements 6-7 Multitable INSERT Statements 6-8 Unconditional INSERT ALL 6-10 Conditional INSERT ALL 6-11 Conditional FIRST INSERT 6-13 Pivoting INSERT 6-15 External Tables 6-18 Creating an External Table 6-19 Example of Creating an External Table 6-20 Querying External Tables 6-23 CREATE INDEX with CREATE TABLE Statement 6-24 Summary 6-25 Practice 6 Overview 6-26 A Practice Solutions B Table Descriptions and Data C Writing Advanced Scripts D Oracle Architectural Components Index Additional Practices Additional Practice Solutions Additional Practices: Table Descriptions and Data
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值