• Oracle高级教程


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

    Oracle是关系型数据库

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

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

    • 你追求的不仅仅是技术,更是梦想,世界因你在改变!

    • TABLE:SD_GSS, 数据如下

      YEAR NO
      1992 2
      1992 3
      1992 4
      2017 5
      2017 6
      2017 7
    • SELECT TOP 返回结果集指定行数

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

    • 结果如下

      YEAR NO
      1992 2
      1992 3
    • 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 ,效率低下,浪费系统开销

    • 以上三个结果相同,如下

      YEAR NO
      1992 2
      1992 3
      1992 4
    • 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后台开发,热衷分享技术,认为不错的,给个赞,不足还望提出宝贵经验,谢谢"
      }
    
    读万卷书,行万里路,方能回到内心深处。
  • 相关阅读:
    mysql复习相关
    OpenStack三种类型的NAT转换
    openstack资料相关
    [转]Web 调试工具之 Advanced REST client
    [转]Aspose.Words.dll 将 Word 转换成 html
    [Android] 开发第十天
    [win10]遇坑指南
    [转]Explorer.exe的命令行参数
    [Android] 开发第九天
    [Android] 开发第八天
  • 原文地址:https://www.cnblogs.com/gss0525/p/6779896.html
Copyright © 2020-2023  润新知