zoukankan      html  css  js  c++  java
  • orcla 总结

    一、SQL基础

    1.SQL语句分为以下三种类型

    DML: Data Manipulation Language 数据操纵语言
    DDL: Data Definition Language 数据定义语言
    DCL: Data Control Language 数据控制语言
    1)
    DML用于查询与修改数据记录,包括如下SQL语句:

    INSERT:添加数据到数据库中
    UPDATE:修改数据库中的数据
    DELETE:删除数据库中的数据
    SELECT:选择(查询)数据
    SELECT是SQL语言的基础,最为重要。

    2)
    DDL用于定义数据库的结构,比如创建、修改或删除数据库对象,包括如下SQL语句:

    CREATE TABLE:创建数据库表
    ALTER TABLE:更改表结构、添加、删除、修改列长度
    DROP TABLE:删除表
    CREATE INDEX:在表上建立索引
    DROP INDEX:删除索引

    3)
    DCL用来控制数据库的访问,包括如下SQL语句:

    GRANT:授予访问权限
    REVOKE:撤销访问权限
    COMMIT:提交事务处理
    ROLLBACK:事务处理回退
    SAVEPOINT:设置保存点
    LOCK:对数据库的特定部分进行锁定

    2.常见的数据库对象

    3.数据类型

    二、函数


    1).单行函数
    字符,数值,日期,转换,通用 条件表达式
    1.length(),SUBSTR,index(),lower()
    2.round,Mod求余,trunc 截断
    3.sysdate,ADD_MONTHS,NEXT_DAY,last_day,MONTHS_BETWEEN
    4.to_date,to_number,to_char,
    5.nvl,nvl2,nullIf,COALESCE
    6.CASE 表达式
    CASE expr WHEN comparison_expr1 THEN return_expr1
    [WHEN comparison_expr2 THEN return_expr2
    WHEN comparison_exprn THEN return_exprn
    ELSE else_expr] END

    DECODE 函数
    DECODE(col|expression, search1, result1 ,
    [, search2, result2,...,]
    [, default])

    2).多行函数
    组函数类型:AVG ,COUNT ,MAX ,MIN ,SUM,STDDEV公差
    分组数据: GROUP BY 子句
    过滤分组: HAVING 子句


    三、连接

    --内连接
    1)
    --等值连接
    (1)等值连接:在连接中使用等号(=)操作就是等值连接。
    SELECT employees.employee_id, employees.last_name,
    employees.department_id, departments.department_id,
    departments.location_id
    FROM employees, departments
    WHERE employees.department_id = departments.department_id
    --不等值连接
    (2)不等值连接:主要用除了等号之外的操作符,比如:<>、>、<、>=、<=、LIKE、IN、BETWEEN…AND
    SELECT e.last_name, e.salary, j.grade_level
    FROM employees e, job_grades j
    WHERE e.salary BETWEEN j.lowest_sal AND j.highest_sal;

    2)
    --非自连接
    --自连接 同一张表
    SELECT worker.last_name || ' works for ' || manager.last_name
    FROM employees worker, employees manager
    WHERE worker.manager_id = manager.employee_id ;

    --外连接
    --左外连接、右外连接、满外连接

    SELECT table1.column, table2.column
    FROM table1, table2
    WHERE table1.column(+) = table2.column;

    SELECT table1.column, table2.column
    FROM table1, table2
    WHERE table1.column = table2.column(+);

    SQL: 1999 语法
    LEFT JOIN
    RIGHT JOIN
    FULL JOIN

    --自然连接
    NATURAL JOIN 子句,会以两个表中具有相同名字的列为条件创建等值连接。
    在表中查询满足等值条件的数据。
    如果只是列名相同而数据类型不同,则会产生错误。

    SELECT department_id, department_name,location_id, city
    FROM departments NATURAL JOIN locations ;

    oracle中清空表数据的两种方法

    1、delete from t

    2 、truncate table t

     区别: 

    1、delete是dml操作;truncate是ddl操作,ddl隐式提交不能回滚

    2、delete from t可以回滚,truncate table t 不可以回滚

    3、 truncate table t 执行效率更高,会回收表空间,delete from t执行效率慢,不会回收表空间

    4、 truncate table t高水线下降,delete from t高水线不降(这个不太明白...)自增ID,TRUNCATE后从1开始,DELETE后还是接着自增

  • 相关阅读:
    flume,kafka不在一个内网互相打通.md
    尚硅谷Flink2020教程.md
    常用命令.md
    四象限工作效率-事件管理.md
    甘特图目标实施-进度管控.md
    PDCA循环法.md
    SMART大目标拆解小目标.md
    基于内外部竞争环境和竞争条件下的态势分析
    使用Java正则表达式批量提取文本信息
    使用markdown高效编写博客(创建标题)
  • 原文地址:https://www.cnblogs.com/denghy-301/p/14086813.html
Copyright © 2011-2022 走看看